diff options
author | Simon Howard | 2012-10-28 10:41:45 +0000 |
---|---|---|
committer | Simon Howard | 2012-10-28 10:41:45 +0000 |
commit | 501b13786b024388b3cd7a21c8be8501dbfffb02 (patch) | |
tree | b4b213c71284b7eaadb576ee7bdbf4a4f780fbb5 /src/net_structrw.c | |
parent | f7ecbd1449871a448daa7b96ce121f3fe9d19aed (diff) | |
download | chocolate-doom-501b13786b024388b3cd7a21c8be8501dbfffb02.tar.gz chocolate-doom-501b13786b024388b3cd7a21c8be8501dbfffb02.tar.bz2 chocolate-doom-501b13786b024388b3cd7a21c8be8501dbfffb02.zip |
Add functions for network signature requests. These request the signed
messages from the master server, to be used at the start and end of
recording a secure demo.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2535
Diffstat (limited to 'src/net_structrw.c')
-rw-r--r-- | src/net_structrw.c | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/src/net_structrw.c b/src/net_structrw.c index bba08212..818766e4 100644 --- a/src/net_structrw.c +++ b/src/net_structrw.c @@ -321,31 +321,51 @@ void NET_WriteFullTiccmd(net_packet_t *packet, net_full_ticcmd_t *cmd, boolean l } } -boolean NET_ReadSHA1Sum(net_packet_t *packet, sha1_digest_t digest) +static boolean NET_ReadBlob(net_packet_t *packet, uint8_t *buf, size_t len) { unsigned int b; int i; - for (i=0; i<sizeof(sha1_digest_t); ++i) + for (i=0; i<len; ++i) { if (!NET_ReadInt8(packet, &b)) { return false; } - digest[i] = b; + buf[i] = b; } return true; } -void NET_WriteSHA1Sum(net_packet_t *packet, sha1_digest_t digest) +static void NET_WriteBlob(net_packet_t *packet, uint8_t *buf, size_t len) { int i; - for (i=0; i<sizeof(sha1_digest_t); ++i) + for (i=0; i<len; ++i) { - NET_WriteInt8(packet, digest[i]); + NET_WriteInt8(packet, buf[i]); } } +boolean NET_ReadSHA1Sum(net_packet_t *packet, sha1_digest_t digest) +{ + return NET_ReadBlob(packet, digest, sizeof(sha1_digest_t)); +} + +void NET_WriteSHA1Sum(net_packet_t *packet, sha1_digest_t digest) +{ + NET_WriteBlob(packet, digest, sizeof(sha1_digest_t)); +} + +boolean NET_ReadPRNGSeed(net_packet_t *packet, prng_seed_t seed) +{ + return NET_ReadBlob(packet, seed, sizeof(prng_seed_t)); +} + +void NET_WritePRNGSeed(net_packet_t *packet, prng_seed_t seed) +{ + NET_WriteBlob(packet, seed, sizeof(prng_seed_t)); +} + |