Skip to content

Instantly share code, notes, and snippets.

View cypres's full-sized avatar

Hans Arnholm cypres

View GitHub Profile
@cypres
cypres / .vimrc
Created February 11, 2014 08:54
vimrc for severs
" everything needs to be unicode. EVERYTHING
set encoding=utf8
" always join with just one space, even between sentences
set nojoinspaces
" don't move the cursor to the start of the line when changing buffers
set nostartofline
" Yeah, we like
@cypres
cypres / main.cc
Created March 26, 2014 12:45
smpp time parse
#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdint>
uint64_t unixtime(const char* ts) {
std::tm tm;
tm.tm_year = (ts[0] - '0') * 10 + (ts[1] - '0');
if (tm.tm_year < 70) tm.tm_year += 2000;
tm.tm_mon = (ts[2] - '0') * 10 + (ts[3] - '0');
# This file is NOT licensed under the GPLv3, which is the license for the rest
# of YouCompleteMe.
#
# Here's the license text for this file:
#
# This is free and unencumbered software released into the public domain.
#
# Anyone is free to copy, modify, publish, use, compile, sell, or
# distribute this software, either in source code form or as a compiled
# binary, for any purpose, commercial or non-commercial, and by any
@cypres
cypres / .astylerc
Created June 11, 2014 08:16
OC C++ config for astyle plugin
# astylerc
align-pointer=name
align-reference=name
max-code-length=120
break-after-logical
indent=spaces=2
style=google
# Padding
pad-header
@cypres
cypres / api.sendfile.nginx.patch
Last active August 29, 2015 14:02
trac nginx send file
--- /usr/local/lib/python2.7/site-packages/trac/web/api.py 2014-04-07 11:34:10.326789939 +0200
+++ /usr/local/lib/python2.7/site-packages/trac/web/api.py 2014-06-19 12:52:08.690985738 +0200
@@ -577,7 +577,7 @@
self.send_header('Last-Modified', last_modified)
use_xsendfile = getattr(self, 'use_xsendfile', False)
if use_xsendfile:
- self.send_header('X-Sendfile', os.path.abspath(path))
+ self.send_header('X-Accel-Redirect', os.path.abspath(path))
self.end_headers()
@cypres
cypres / int-concat.cc
Last active August 29, 2015 14:02
Bench of integer concats
#include "time.h"
#include "math.h"
#include "assert.h"
#include <string>
// After http://ideone.com/hbWgE
int num_tests = 5000000;
unsigned duck(unsigned x, unsigned y) {
@cypres
cypres / fix_permissions.sh
Created July 11, 2014 10:45
Fix permissions script
#!/bin/sh
PATH=/var/www
USER=ftp
GROUP=www
# do an early exit if another find command is already running
/bin/ps axc | /usr/bin/awk '{ print $5 }' | /usr/bin/grep -q find
if [ $? -eq 0 ]; then
exit;
@cypres
cypres / .ycm_extra_conf.py
Created October 6, 2014 13:38
YouCompleteMe extra conf
# This file is NOT licensed under the GPLv3, which is the license for the rest
# of YouCompleteMe.
#
# Here's the license text for this file:
#
# This is free and unencumbered software released into the public domain.
#
# Anyone is free to copy, modify, publish, use, compile, sell, or
# distribute this software, either in source code form or as a compiled
# binary, for any purpose, commercial or non-commercial, and by any
@cypres
cypres / ssl_params
Created October 17, 2014 14:43
SSL config to keep IE6 on XP Support and Forward Secrecy - yet mitigate POODLE and BEAST server side
# For nginx. Requires OpenSSL 1.0.1j
ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH+aRSA+RC4:EECDH:EDH+aRSA:RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!CAMELLIA;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
@cypres
cypres / hello.php
Created October 31, 2014 12:39
nimta.com gateway hello world
<?php
(new SoapClient('https://soap.nimta.com?wsdl'))->sendSMSes(array(
'username' => 'USERNAME',
'password' => 'PASSWORD',
'gatewayClass' => 'A',
'messages' => array(
array(
'message' => 'Hello World!',
'charge' => 0,
'delayed' => false,