sudo install fail2ban
sudo install ufw
sudu ufw default deny incomoing
sudo ufw default allow outgoins
2019-06-03
Note that Office2019 DO NOT support activate via simple copy/paste plist license file which is the simplest way to activate Office 2016. Fortunately, you can also use the VL Serializer tool, just install Office 2019 and Serializer, then run Serializer to activate.
| // Based on https://code.tutsplus.com/articles/securing-communications-on-ios--cms-28529 | |
| import Foundation | |
| import Security | |
| struct Certificate { | |
| let certificate: SecCertificate | |
| let data: Data | |
| } |
| extension UITabBar { | |
| override open func sizeThatFits(size: CGSize) -> CGSize { | |
| super.sizeThatFits(size) | |
| var sizeThatFits = super.sizeThatFits(size) | |
| sizeThatFits.height = 71 | |
| return sizeThatFits | |
| } | |
| } |
| // | |
| // PDF.swift | |
| // | |
| // Created by Ben Bahrenburg on 1/1/17. | |
| // Copyright © 2017 bencoding.. All rights reserved. | |
| // | |
| import UIKit | |
| open class PDFHelpers { |
| #import "TSTextToSpeechUtils.h" | |
| @interface TSTextToSpeechUtils () | |
| @property (strong, nonatomic) AVSpeechSynthesizer *synthesizer; | |
| @property (strong, nonatomic) AVSpeechUtterance *lastPlayingUtterance; | |
| @property (strong, nonatomic) AVAudioSession *audioSession; | |
| @end | |
| #import <Foundation/Foundation.h> | |
| #import <AVFoundation/AVFoundation.h> | |
| @interface TSTextToSpeechUtils : NSObject<AVSpeechSynthesizerDelegate> | |
| - (void)synthesizeSpeechForText:(NSString *)text; | |
| @end |
| @objc | |
| class TextToSpeechUtils: NSObject, AVSpeechSynthesizerDelegate { | |
| let synthesizer = AVSpeechSynthesizer() | |
| let audioSession = AVAudioSession.sharedInstance() | |
| let defaultLanguage = "en-US" | |
| var lastPlayingUtterance: AVSpeechUtterance? | |
| public func synthesizeSpeech(forText text: String) { | |