X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/130e9641fd8700ee9ac18a3f2e42a4e8f743a8e9..3634fc257bd0667daef14d72005cd87c735bbb24:/src/src/srs.c diff --git a/src/src/srs.c b/src/src/srs.c index b96d5f67a..0115c0b51 100644 --- a/src/src/srs.c +++ b/src/src/srs.c @@ -1,5 +1,3 @@ -/* $Cambridge: exim/src/src/srs.c,v 1.6 2005/05/24 08:50:35 ph10 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ @@ -29,7 +27,7 @@ int eximsrs_init() { uschar *list = srs_config; uschar secret_buf[SRS_MAX_SECRET_LENGTH]; - uschar *secret; + uschar *secret = NULL; uschar sbuf[4]; uschar *sbufp; @@ -71,7 +69,7 @@ int eximsrs_init() /* First secret specified in secrets? */ co = 0; list = srs_secrets; - if(secret == NULL) + if(secret == NULL || *secret == '\0') { if((secret = string_nextinlist(&list, &co, secret_buf, SRS_MAX_SECRET_LENGTH)) == NULL) { @@ -107,7 +105,7 @@ int eximsrs_init() /* Extra secrets? */ while((secret = string_nextinlist(&list, &co, secret_buf, SRS_MAX_SECRET_LENGTH)) != NULL) - srs_add_secret(srs, secret, strnlen(secret, SRS_MAX_SECRET_LENGTH)); + srs_add_secret(srs, secret, (Ustrlen(secret) > SRS_MAX_SECRET_LENGTH) ? SRS_MAX_SECRET_LENGTH : Ustrlen(secret)); DEBUG(D_any) debug_printf("SRS initialized\n");