diff options
author | 2009-04-16 19:12:12 -0400 | |
---|---|---|
committer | 2009-04-16 19:12:12 -0400 | |
commit | 369f5592adc342fc7e2436fa14ec6671c747685e (patch) | |
tree | 7e56853b9d7b3d70846add897bdffc1d309cae94 /src/c/urweb.c | |
parent | 7f7d05616c489b6039bc1e8824c00b43209109c2 (diff) |
Cookie signing working for forms
Diffstat (limited to 'src/c/urweb.c')
-rw-r--r-- | src/c/urweb.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/c/urweb.c b/src/c/urweb.c index d3a93af9..bd42352f 100644 --- a/src/c/urweb.c +++ b/src/c/urweb.c @@ -1981,3 +1981,25 @@ failure_kind uw_initialize(uw_context ctx) { uw_Basis_string uw_Basis_bless(uw_context ctx, uw_Basis_string s) { return s; } + +uw_Basis_string uw_unnull(uw_Basis_string s) { + return s ? s : ""; +} + +extern int uw_hash_blocksize; + +uw_Basis_string uw_Basis_makeSigString(uw_context ctx, uw_Basis_string sig) { + uw_Basis_string r = uw_malloc(ctx, 2 * uw_hash_blocksize + 1); + int i; + + for (i = 0; i < uw_hash_blocksize; ++i) + sprintf(&r[2*i], "%.02X", ((unsigned char *)sig)[i]); + + return r; +} + +extern uw_Basis_string uw_cookie_sig(uw_context); + +uw_Basis_string uw_Basis_sigString(uw_context ctx, uw_unit u) { + return uw_cookie_sig(ctx); +} |