Mercurial > hg > quicktun
comparison src/proto.salty.c @ 45:671d640390f2
Removed/changed some debug/test code in salty protocol
author | Ivo Smits <Ivo@UCIS.nl> |
---|---|
date | Fri, 17 May 2013 16:10:58 +0200 |
parents | 4adbd9b67fe2 |
children | 3f04a72ce035 |
comparison
equal
deleted
inserted
replaced
44:55f379f0a650 | 45:671d640390f2 |
---|---|
243 struct qt_proto_data_salty_keyset* enckey = &d->datalocalkeys[d->datalocalkeynextid]; | 243 struct qt_proto_data_salty_keyset* enckey = &d->datalocalkeys[d->datalocalkeynextid]; |
244 if (!randombytes(enckey->nonce, 20)) return false; | 244 if (!randombytes(enckey->nonce, 20)) return false; |
245 if (!randombytes(enckey->privatekey, PRIVATEKEYBYTES)) return false; | 245 if (!randombytes(enckey->privatekey, PRIVATEKEYBYTES)) return false; |
246 crypto_scalarmult_curve25519_base(enckey->publickey, enckey->privatekey); | 246 crypto_scalarmult_curve25519_base(enckey->publickey, enckey->privatekey); |
247 memset(enckey->nonce + 20, 0, 4); | 247 memset(enckey->nonce + 20, 0, 4); |
248 enckey->nonce[20] = 0x0F; //debugging | |
249 enckey->nonce[21] = 0xFF; //debugging | |
250 if (debug) dumphex("New public key", enckey->publickey, 32); | 248 if (debug) dumphex("New public key", enckey->publickey, 32); |
251 if (debug) dumphex("New base nonce", enckey->nonce, 24); | 249 if (debug) dumphex("New base nonce", enckey->nonce, 24); |
252 initdecoder(&d->datadecoders[(d->dataremotekeyid << 1) | d->datalocalkeynextid], d->dataremotekey, enckey->privatekey, d->dataremotenonce); | 250 initdecoder(&d->datadecoders[(d->dataremotekeyid << 1) | d->datalocalkeynextid], d->dataremotekey, enckey->privatekey, d->dataremotenonce); |
253 sendkeyupdate(sess, false); | 251 sendkeyupdate(sess, false); |
254 d->lastkeyupdate = time(NULL); | 252 d->lastkeyupdate = time(NULL); |
255 } | 253 } |
256 | 254 |
257 static void beginkeyupdateifnecessary(struct qtsession* sess) { | 255 static void beginkeyupdateifnecessary(struct qtsession* sess) { |
258 struct qt_proto_data_salty* d = (struct qt_proto_data_salty*)sess->protocol_data; | 256 struct qt_proto_data_salty* d = (struct qt_proto_data_salty*)sess->protocol_data; |
259 time_t t = time(NULL); | 257 time_t t = time(NULL); |
260 if (t - d->lastkeyupdate > 10) { | 258 if (t - d->lastkeyupdate > 300) { |
261 beginkeyupdate(sess); | 259 beginkeyupdate(sess); |
262 } else if (d->datalocalkeynextid != -1 && t - d->lastkeyupdatesent > 0) { | 260 } else if (d->datalocalkeynextid != -1 && t - d->lastkeyupdatesent > 1) { |
263 sendkeyupdate(sess, false); | 261 sendkeyupdate(sess, false); |
264 } | 262 } |
265 } | 263 } |
266 | 264 |
267 static int init(struct qtsession* sess) { | 265 static int init(struct qtsession* sess) { |
301 d->datalocalkeyid = 0; | 299 d->datalocalkeyid = 0; |
302 d->datalocalkeynextid = -1; | 300 d->datalocalkeynextid = -1; |
303 d->dataremotekeyid = 0; | 301 d->dataremotekeyid = 0; |
304 beginkeyupdate(sess); | 302 beginkeyupdate(sess); |
305 d->datalocalkeyid = d->datalocalkeynextid; | 303 d->datalocalkeyid = d->datalocalkeynextid; |
306 sess->poll_timeout = 1000; | 304 sess->poll_timeout = 5000; |
307 return 0; | 305 return 0; |
308 } | 306 } |
309 | 307 |
310 static int encode(struct qtsession* sess, char* raw, char* enc, int len) { | 308 static int encode(struct qtsession* sess, char* raw, char* enc, int len) { |
311 beginkeyupdateifnecessary(sess); | 309 beginkeyupdateifnecessary(sess); |