Skip to content

Instantly share code, notes, and snippets.

View tgunr's full-sized avatar

Dave Carlton tgunr

View GitHub Profile
@tgunr
tgunr / processCSV
Created March 2, 2011 03:53
processCSV
- (NSMutableArray *) processCSV: (NSString *)csvData
{
// Character delimiter sets
NSCharacterSet *lineCharacterSet = [NSCharacterSet characterSetWithCharactersInString:@"\r\n"];
NSCharacterSet *fieldCharacterSet = [NSCharacterSet characterSetWithCharactersInString:@","];
NSCharacterSet *quotedCharacterSet = [NSCharacterSet characterSetWithCharactersInString:@"\""];
// Temporary line and field holders
// The scanner will alloc and init this variables as needed
NSString *line;
@tgunr
tgunr / gist:1389922
Created November 23, 2011 21:09
Mikrotik AppleTV tag
/ip firewall mangle
add action=mark-connection chain=prerouting comment=APPLETV disabled=no new-connection-mark=APPLETV passthrough=no \
src-address=192.168.0.249
add action=log chain=prerouting comment=APPLETV disabled=yes log-prefix=APPLETV src-mac-address=28:CF:DA:1D:13:31
add action=mark-packet chain=prerouting connection-mark=APPLETV disabled=no new-packet-mark=Data-APPLETV passthrough=no
/queue type
add kind=pcq name=LAN-PCQ pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-classifier=dst-address pcq-dst-address-mask=24 \
pcq-dst-address6-mask=128 pcq-limit=10 pcq-rate=100M pcq-src-address-mask=24 pcq-src-address6-mask=128 pcq-total-limit=1000000000
add kind=pcq name=WAN-PCQ pcq-burst-rate=0 pcq-burst-threshold=0 pcq-burst-time=10s pcq-classifier=dst-address pcq-dst-address-mask=32 \
@tgunr
tgunr / gist:3904843
Created October 17, 2012 10:22 — forked from saetia/gist:1623487
Clean Install – Mountain Lion OS X 10.8
@tgunr
tgunr / fw-failsafe
Last active December 14, 2015 19:49
Firewall watchdog - Reset and flush firewall if watchdog file is not updated while testing rules.
#!/bin/bash
# reset.fw - Reset firewall
# set x to 0 - No reset
# set x to 1 - Reset firewall
# ---------------------------------------------------------------------------------------------------------------
# Added support for IPV6 Firewall
# ---------------------------------------------------------------------------------------------------------------
# Written by Vivek Gite <vivek@nixcraft.com>
# ---------------------------------------------------------------------------------------------------------------
# Modified by Dave Carlton <davec@polymicro.net> to use watchdog file
@tgunr
tgunr / gist:e3bf8f6043ca13971388
Created March 13, 2016 01:11
Debugging SYNTAX:
: parsing-regexp ( x -- x )
(parse-regexp) <compiled-pcre> <matcher> ;
SYNTAX: P! CHAR: ! parsing-regexp ;
Stack effect declaration is wrong
inferred ( -- x )
declared ( parsed -- parsed )
@tgunr
tgunr / gist:f703a78de2d23a71a914
Created March 14, 2016 12:20
Dealing with structs
struct st_mysql_methods;
typedef struct st_mysql
{
NET net; /* Communication parameters */
unsigned char *connector_fd; /* ConnectorFd for SSL */
char *host,*user,*passwd,*unix_socket,*server_version,*host_info;
char *info, *db;
struct charset_info_st *charset;
MYSQL_FIELD *fields;
[mbpr]/Sources/Factor (db4): git remote -v
fc https://factorcode.org/git/factor.git (fetch)
fc https://factorcode.org/git/factor.git (push)
gh https://github.com/factor/factor.git (push)
gh https://github.com/factor/factor.git (fetch)
origin git@github.com:tgunr/factor.git (push)
origin git@github.com:tgunr/factor.git (fetch)
slava https://github.com/slavapestov/factor.git (fetch)
slava https://github.com/slavapestov/factor.git (push)
@tgunr
tgunr / gist:abd750b9325fcab7e312
Created March 14, 2016 20:11
No word named “dlsym?” found in current vocabulary search path
IN: alien.libraries
GENERIC: dlsym? ( name string/dll -- ? )
M: string dlsym? dup lookup-library [ nip dll>> dlsym? ] [ no-library-named ] if* ;
M: dll dlsym? dlsym >boolean ;
IN: secure
MEMO: best-tls-method ( -- class )
{
{ [ "TLSv1_2_method" "libssl" dlsym? ] [ TLSv1.2 ] }
{ [ "TLSv1_1_method" "libssl" dlsym? ] [ TLSv1.1 ] }
@tgunr
tgunr / Using enum.swift
Last active November 29, 2016 02:58
enum
enum ShortcutIdentifier: String {
case Start
case Stop
case Share
init?(fullType: String) {
guard let last = fullType.components(separatedBy: ".").last else { return nil }
self.init(rawValue: last)
}
var type: String {
@tgunr
tgunr / IncidentList.swift
Last active November 30, 2016 21:12
Fail to parse if saveUserDefaults is not commented out
class IncidentList: NSObject, NSCoding {
var incidents: [Incident]
static let sharedInstance = IncidentList()
var stagedIncident: Incident?
let ArchiveURL = DocumentsDirectory.appendingPathComponent("incidents").standardizedFileURL.path
// private override init() {
// }
public override init() {