diff src/proto.salty.c @ 62:5b9e742bb704

Fixed compiler warnings, removed redundant version dependencies in debian package
author Ivo Smits <Ivo@UFO-Net.nl>
date Sat, 07 Jan 2017 15:47:19 +0100
parents 66d9d80215f0
children
line wrap: on
line diff
--- a/src/proto.salty.c	Wed Jan 04 21:42:38 2017 +0100
+++ b/src/proto.salty.c	Sat Jan 07 15:47:19 2017 +0100
@@ -209,7 +209,10 @@
 	memset(d->timestamps, 0, 5 * sizeof(uint32));
 	if (debug) dumphex("INIT DECODER SK", lkey, 32);
 	if (debug) dumphex("INIT DECODER RK", rkey, 32);
-	crypto_box_curve25519xsalsa20poly1305_beforenm(d->sharedkey, rkey, lkey);
+	if (crypto_box_curve25519xsalsa20poly1305_beforenm(d->sharedkey, rkey, lkey)) {
+		errorexit("Encryption key calculation failed");
+		abort();
+	}
 }
 
 static void sendkeyupdate(struct qtsession* sess, bool ack) {
@@ -291,7 +294,8 @@
 	} else {
 		return errorexit("Missing PRIVATE_KEY");
 	}
-	crypto_box_curve25519xsalsa20poly1305_beforenm(d->controlkey, cpublickey, csecretkey);
+	if (crypto_box_curve25519xsalsa20poly1305_beforenm(d->controlkey, cpublickey, csecretkey))
+		return errorexit("Encryption key calculation failed");
 	unsigned char cownpublickey[PUBLICKEYBYTES];
 	crypto_scalarmult_curve25519_base(cownpublickey, csecretkey);
 	int role = memcmp(cownpublickey, cpublickey, PUBLICKEYBYTES);
@@ -434,7 +438,10 @@
 			d->datalocalkeynextid = -1;
 		}
 		if (lkeyid == d->datalocalkeyid) {
-			crypto_box_curve25519xsalsa20poly1305_beforenm(enckey->sharedkey, d->dataremotekey, enckey->privatekey);
+			if (crypto_box_curve25519xsalsa20poly1305_beforenm(enckey->sharedkey, d->dataremotekey, enckey->privatekey)) {
+				errorexit("Encryption key calculation failed");
+				abort();
+			}
 			d->dataencoder = enckey;
 		}
 		if (debug) fprintf(stderr, "Decoded control packet: rkid=%d, lkid=%d, ack=%d, lkvalid=%d, uptodate=%d\n", d->dataremotekeyid, (cflags >> 5) & 0x01, (cflags >> 4) & 0x01, lkeyid != -1, d->datalocalkeynextid == -1);