Skip to content

Instantly share code, notes, and snippets.

Joe K jokecamp

Block or report user

Report or block jokecamp

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@jokecamp
jokecamp / monoserver
Created Aug 31, 2013
Linux startup script for fastcgi-mono-server4
View monoserver
#!/bin/sh
### BEGIN INIT INFO
# http://yojimbo87.github.io/2010/03/14/mono-startup-script.html
# Provides: monoserve.sh
# Required-Start: $local_fs $syslog $remote_fs
# Required-Stop: $local_fs $syslog $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start fastcgi mono server with hosts
@jokecamp
jokecamp / gist:2c1a67b8f277797ecdb3
Last active Sep 15, 2019
Powershell HMAC SHA 256 Example
View gist:2c1a67b8f277797ecdb3
# Powershell HMAC SHA 256
$message = 'Message'
$secret = 'secret'
$hmacsha = New-Object System.Security.Cryptography.HMACSHA256
$hmacsha.key = [Text.Encoding]::ASCII.GetBytes($secret)
$signature = $hmacsha.ComputeHash([Text.Encoding]::ASCII.GetBytes($message))
$signature = [Convert]::ToBase64String($signature)
@jokecamp
jokecamp / package.json
Last active Jul 31, 2019
Demo for Passport.js authentication in a Node.js Express application
View package.json
{
"name": "securehelloworld",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
View ServiceStackApiHMAC
using ServiceStack.WebHost.Endpoints;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Security;
using ServiceStack.Common.Web;
using ServiceStack.Logging;
using ServiceStack.ServiceHost;
using ServiceStack.ServiceInterface;
View Angular No Whitespace Allowed Vaidator Directive
<md-input-container class="admin-form">
<input md-input placeholder="Block Title" nfNoSpaces [(ngModel)]="block.title" id="block-{{ block.id }}-input-name" name="title"
#title="ngModel">
<md-hint [ngStyle]="{'color': 'red'}" align="start" *ngIf="!title.valid && !title.pristine">Title is required.</md-hint>
</md-input-container>
Be sure to include ref to directive in module declarations array.
View set-assemblyinfo.ps1
function getVersion()
{
$tag = iex "git describe --long --tags --always"
$a = [regex]"v\d+\.\d+\.\d+\-\d+"
$b = $a.Match($tag)
$b = $b.Captures[0].value
$b = $b -replace '-', '.'
$b = $b -replace 'v', ''
Write-Host "Version found: $b"
@jokecamp
jokecamp / example.dart
Created Jan 17, 2014
Dart HMAC SHA 256 Example code
View example.dart
import 'dart:html';
import 'dart:convert';
import 'package:crypto/crypto.dart';
void main() {
String secret = 'secret';
String message = 'Message';
List<int> secretBytes = UTF8.encode('secret');
@jokecamp
jokecamp / RequestFilter
Created Dec 13, 2013
ServiceStack v3 Partial Updates
View RequestFilter
this.RequestFilters.Add((httpReq, httpResp, requestDto) =>
{
var hasFilter = requestDto as IAllowPartialUpdate;
if (hasFilter != null)
{
if (httpReq.QueryString["fields"] != null)
{
// store for later
httpReq.Items.Add("Patch_Fields", httpReq.QueryString["fields"].Split(new[] {','}));
}
@jokecamp
jokecamp / gist:7529013
Created Nov 18, 2013
Various ways of sanitizing XML input
View gist:7529013
/// http://seattlesoftware.wordpress.com/2008/09/11/hexadecimal-value-0-is-an-invalid-character/
/// http://stackoverflow.com/questions/157646/best-way-to-encode-text-data-for-xml/732135#732135
public string Clean(string text)
{
return new string(text.Where(XmlConvert.IsXmlChar).ToArray());
}
public static string CleanInvalidXmlChars(string text)
{
@jokecamp
jokecamp / ConsoleExample.cs
Last active Dec 13, 2015
RSS Example Output
View ConsoleExample.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using ServiceStack.Text;
using System.Runtime.Serialization;
using System.Xml;
[assembly: ContractNamespace("", ClrNamespace = "ServiceStackTester")]
You can’t perform that action at this time.