For excessively paranoid client authentication.
Updated Apr 5 2019:
because this is a gist from 2011 that people stumble into and maybe you should AES instead of 3DES in the year of our lord 2019.
some other notes:
| <?php | |
| require_once __DIR__.'/../Silex/silex.phar'; | |
| use Silex\Extension\DoctrineExtension; | |
| $app = new Silex\Application; | |
| $app->register(new DoctrineExtension, array( | |
| 'doctrine.dbal.connection_options' => array( |
| (function (name, definition){ | |
| if (typeof define === 'function'){ // AMD | |
| define(definition); | |
| } else if (typeof module !== 'undefined' && module.exports) { // Node.js | |
| module.exports = definition(); | |
| } else { // Browser | |
| var theModule = definition(), global = this, old = global[name]; | |
| theModule.noConflict = function () { | |
| global[name] = old; | |
| return theModule; |
| /** | |
| * First, better, "set exports/return" option | |
| */ | |
| (function (define) { | |
| //The 'id' is optional, but recommended if this is | |
| //a popular web library that is used mostly in | |
| //non-AMD/Node environments. However, if want | |
| //to make an anonymous module, remove the 'id' | |
| //below, and remove the id use in the define shim. | |
| define('id', function (require) { |
# This example does an AJAX lookup and is in CoffeeScript
$('.typeahead').typeahead(
# source can be a function
source: (typeahead, query) ->
# this function receives the typeahead object and the query string| <!doctype html> | |
| <!-- http://taylor.fausak.me/2015/01/27/ios-8-web-apps/ --> | |
| <html> | |
| <head> | |
| <title>iOS 8 web app</title> | |
| <!-- CONFIGURATION --> |
| var parser = document.createElement('a'); | |
| parser.href = "http://example.com:3000/pathname/?search=test#hash"; | |
| parser.protocol; // => "http:" | |
| parser.hostname; // => "example.com" | |
| parser.port; // => "3000" | |
| parser.pathname; // => "/pathname/" | |
| parser.search; // => "?search=test" | |
| parser.hash; // => "#hash" | |
| parser.host; // => "example.com:3000" |
| http://worldoftanks.eu/community/accounts/api/%API_VER%/?source_token=%TOKEN%&search=%NAME%&offset=0&limit=1 | |
| http://worldoftanks.eu/community/accounts/%PLAYER_ID%/api/%API_VER%/?source_token=%TOKEN% | |
| http://worldoftanks.eu/community/clans/api/%API_VER%/?source_token=%TOKEN%&search=%CLAN_NAME%&offset=0&limit=1 | |
| http://worldoftanks.eu/community/clans/%CLAN_ID%/api/%API_VER%/?source_token=%TOKEN% | |
| http://worldoftanks.eu/personal/api/%API_VER%/?source_token=%TOKEN% | |
| login req: getlogin: https://worldoftanks.eu/auth/create/api/1.0/?source_token=%TOKEN% | |
| gettoken: https://worldoftanks.eu/utils/csrf/api/1.0/?source_token=%TOKEN% | |
| api versions: 1.0, 1.1, 1.2, 1.3 |
Install prerequisites:
$ sudo apt-get install build-essential pkg-config checkinstall git-core avahi-daemon libavahi-client-dev
Download src:
$ cd /usr/local/src
$ git clone git://netatalk.git.sourceforge.net/gitroot/netatalk/netatalk
$ cd netatalk
$ ./bootstrap