[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r21228 - gnunet/src/util
From: |
gnunet |
Subject: |
[GNUnet-SVN] r21228 - gnunet/src/util |
Date: |
Wed, 2 May 2012 21:43:45 +0200 |
Author: grothoff
Date: 2012-05-02 21:43:45 +0200 (Wed, 02 May 2012)
New Revision: 21228
Modified:
gnunet/src/util/strings.c
Log:
-improving error reporting on #2295
Modified: gnunet/src/util/strings.c
===================================================================
--- gnunet/src/util/strings.c 2012-05-02 19:38:20 UTC (rev 21227)
+++ gnunet/src/util/strings.c 2012-05-02 19:43:45 UTC (rev 21228)
@@ -1007,21 +1007,43 @@
return GNUNET_SYSERR;
memcpy (zbuf, zt_addr, addrlen);
if ('[' != zbuf[0])
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ _("IPv6 address did not start with `['\n"));
return GNUNET_SYSERR;
+ }
zbuf[addrlen] = '\0';
port_colon = strrchr (zbuf, ':');
if (NULL == port_colon)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ _("IPv6 address did contain ':' to separate port number\n"));
return GNUNET_SYSERR;
+ }
if (']' != *(port_colon - 1))
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ _("IPv6 address did contain ']' before ':' to separate port
number\n"));
return GNUNET_SYSERR;
+ }
ret = SSCANF (port_colon, ":%u", &port);
if ( (-1 != ret) || (port > 65535) )
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ _("IPv6 address did contain a valid port number after the last
':'\n"));
return GNUNET_SYSERR;
+ }
*(port_colon-1) = '\0';
memset (r_buf, 0, sizeof (struct sockaddr_in6));
ret = inet_pton (AF_INET6, &zbuf[1], &r_buf->sin6_addr);
if (ret <= 0)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ _("Invalid IPv6 address `%s': %s\n"),
+ &zbuf[1],
+ STRERROR (errno));
return GNUNET_SYSERR;
+ }
r_buf->sin6_port = htons (port);
r_buf->sin6_family = AF_INET6;
#if HAVE_SOCKADDR_IN_SIN_LEN
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r21228 - gnunet/src/util,
gnunet <=