From afc51a247fb01025e3d29d486acd8f4acbea02c3 Mon Sep 17 00:00:00 2001 From: Andreas Steffen Date: Mon, 6 Aug 2007 11:05:11 +0000 Subject: [PATCH] debug info on preshared secrets --- src/pluto/keys.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/pluto/keys.c b/src/pluto/keys.c index 1efe852..2113f13 100644 --- a/src/pluto/keys.c +++ b/src/pluto/keys.c @@ -772,6 +772,34 @@ process_pin(secret_t *s, int whackfd) } static void +log_psk(secret_t *s) +{ + int n = 0; + char buf[BUF_LEN]; + id_list_t *id_list = s->ids; + + if (id_list == NULL) + { + n = snprintf(buf, BUF_LEN, "%%any"); + } + else + { + do + { + n += idtoa(&id_list->id, buf + n, BUF_LEN - n); + if (n >= BUF_LEN) + { + n = BUF_LEN - 1; + break; + } + id_list = id_list->next; + } + while (id_list); + } + plog(" loaded shared key for %.*s", n, buf); +} + +static void process_secret(secret_t *s, int whackfd) { err_t ugh = NULL; @@ -780,11 +808,13 @@ process_secret(secret_t *s, int whackfd) if (*tok == '"' || *tok == '\'') { /* old PSK format: just a string */ + log_psk(s); ugh = process_psk_secret(&s->u.preshared_secret); } else if (tokeqword("psk")) { /* preshared key: quoted string or ttodata format */ + log_psk(s); ugh = !shift()? "unexpected end of record in PSK" : process_psk_secret(&s->u.preshared_secret); } -- 2.7.4