Using the lladdr 00:11:22:33:44:55
option in the OpenVPN client custom configuration form doesn't change the MAC of the tap interface.
Paste this in the custom configuration box:
script-security 2
module Person = | |
open System | |
type PersonState = private { id: Guid; name: string; age: int} | |
let createPerson id name age = {id = id; name = name; age = age} | |
let changeName name personState = {personState with name = name} | |
let changeAge age personState = | |
// some crazy business rule involving age | |
{personState with age = age} | |
module SomeOtherModule = |
public class PasswordHash | |
{ | |
public const int SaltByteSize = 24; | |
public const int HashByteSize = 20; // to match the size of the PBKDF2-HMAC-SHA-1 hash | |
public const int Pbkdf2Iterations = 1000; | |
public const int IterationIndex = 0; | |
public const int SaltIndex = 1; | |
public const int Pbkdf2Index = 2; | |
public static string HashPassword(string password) |
using System; | |
using System.Collections.Generic; | |
using System.Linq; | |
using System.Text; | |
using System.Data.SqlClient; | |
using Dapper; | |
// to have a play, install Dapper.Rainbow from nuget |
*.js diff="javascript" |
// Only add setZeroTimeout to the window object, and hide everything | |
// else in a closure. | |
(function() { | |
var timeouts = []; | |
var messageName = "zero-timeout-message"; | |
// Like setTimeout, but only takes a function argument. There's | |
// no time argument (always zero) and no arguments (you have to | |
// use a closure). | |
function setZeroTimeout(fn) { |