diff options
author | Christian Grothoff <christian@grothoff.org> | 2018-05-20 23:40:20 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2018-05-20 23:40:20 +0200 |
commit | d080cb1ed80a0e528b2b755ee48ca18cb670175e (patch) | |
tree | d8c0edab6035e4d38138b303566e972fbf8b8c5f /src/namestore/namestore_api_monitor.c | |
parent | 0a8c135eedab5213b31c21b3d4b800e5f0f6041f (diff) | |
download | gnunet-d080cb1ed80a0e528b2b755ee48ca18cb670175e.tar.gz gnunet-d080cb1ed80a0e528b2b755ee48ca18cb670175e.zip |
check return values from GNSRECORD_record_serialize/size always
Diffstat (limited to 'src/namestore/namestore_api_monitor.c')
-rw-r--r-- | src/namestore/namestore_api_monitor.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/namestore/namestore_api_monitor.c b/src/namestore/namestore_api_monitor.c index 9ba90833b..16780ad0c 100644 --- a/src/namestore/namestore_api_monitor.c +++ b/src/namestore/namestore_api_monitor.c | |||
@@ -144,6 +144,11 @@ check_result (void *cls, | |||
144 | rd_len = ntohs (lrm->rd_len); | 144 | rd_len = ntohs (lrm->rd_len); |
145 | rd_count = ntohs (lrm->rd_count); | 145 | rd_count = ntohs (lrm->rd_count); |
146 | name_len = ntohs (lrm->name_len); | 146 | name_len = ntohs (lrm->name_len); |
147 | if (name_len > MAX_NAME_LEN) | ||
148 | { | ||
149 | GNUNET_break (0); | ||
150 | return GNUNET_SYSERR; | ||
151 | } | ||
147 | exp_lrm_len = sizeof (struct RecordResultMessage) + name_len + rd_len; | 152 | exp_lrm_len = sizeof (struct RecordResultMessage) + name_len + rd_len; |
148 | if (lrm_len != exp_lrm_len) | 153 | if (lrm_len != exp_lrm_len) |
149 | { | 154 | { |
@@ -156,7 +161,7 @@ check_result (void *cls, | |||
156 | return GNUNET_SYSERR; | 161 | return GNUNET_SYSERR; |
157 | } | 162 | } |
158 | name_tmp = (const char *) &lrm[1]; | 163 | name_tmp = (const char *) &lrm[1]; |
159 | if ((name_tmp[name_len -1] != '\0') || (name_len > MAX_NAME_LEN)) | 164 | if (name_tmp[name_len -1] != '\0') |
160 | { | 165 | { |
161 | GNUNET_break (0); | 166 | GNUNET_break (0); |
162 | return GNUNET_SYSERR; | 167 | return GNUNET_SYSERR; |