chiark / gitweb /
server: Fix some bad warning messages.
authorMark Wooding <mdw@distorted.org.uk>
Thu, 11 Jan 2007 00:06:46 +0000 (00:06 +0000)
committerMark Wooding <mdw@distorted.org.uk>
Thu, 11 Jan 2007 00:16:25 +0000 (00:16 +0000)
Oops, the arguments to some calls to a_warn are malformed and can cause
crashes.  Fix them.

server/keyexch.c
server/peer.c

index ae8c9c5..8577d91 100644 (file)
@@ -563,7 +563,7 @@ static kxchal *respond(keyexch *kx, unsigned msg, buf *b)
   /* --- Discard a packet with an invalid cookie --- */
 
   if (hc && memcmp(hc, kx->hc, algs.hashsz) != 0) {
-    a_warn("KX", "?PEER", "incorrect", "cookie", A_END);
+    a_warn("KX", "?PEER", kx->p, "incorrect", "cookie", A_END);
     goto bad;
   }
 
@@ -950,7 +950,7 @@ static int doswitch(keyexch *kx, buf *b)
       checkresponse(kx, KX_SWITCH, b))
     goto bad;
   if ((hswrq = buf_get(b, algs.hashsz)) == 0 || BLEFT(b)) {
-    a_warn("KX", "?PEER", "invalid", "switch-rq", A_END);
+    a_warn("KX", "?PEER", kx->p, "invalid", "switch-rq", A_END);
     goto bad;
   }
   IF_TRACING(T_KEYEXCH, {
@@ -996,7 +996,7 @@ static int doswitchok(keyexch *kx, buf *b)
   if (decryptrest(kx, kxc, KX_SWITCHOK, b))
     goto bad;
   if ((hswok = buf_get(b, algs.hashsz)) == 0 || BLEFT(b)) {
-    a_warn("KX", "?PEER", "invalid", "switch-ok", A_END);
+    a_warn("KX", "?PEER", kx->p, "invalid", "switch-ok", A_END);
     goto bad;
   }
   IF_TRACING(T_KEYEXCH, {
index fd79a84..1e5d076 100644 (file)
@@ -247,7 +247,7 @@ found:
          buf_init(&bb, buf_t, sizeof(buf_t));
          if (ksl_decrypt(&p->ks, ch, &b, &bb)) {
            p->st.n_reject++;
-           a_warn("PEER", "?PEER", "decrypt-failed", A_END);
+           a_warn("PEER", "?PEER", p, "decrypt-failed", A_END);
            return;
          }
          if (BOK(&bb)) {