]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Increase the length of the buffer in smartlist_string_num_isin().
authorNick Mathewson <nickm@torproject.org>
Mon, 16 May 2011 02:13:53 +0000 (22:13 -0400)
committerNick Mathewson <nickm@torproject.org>
Mon, 16 May 2011 02:13:53 +0000 (22:13 -0400)
This was harmless, since we only used this for checking for lists of
port values, but it's the principle of the thing.

Fixes 3175; bugfix on 0.1.0.1-rc

changes/bug3175 [new file with mode: 0644]
src/common/container.c

diff --git a/changes/bug3175 b/changes/bug3175
new file mode 100644 (file)
index 0000000..3360fbc
--- /dev/null
@@ -0,0 +1,7 @@
+  o Minor bugfixes:
+    - Resolve an untriggerable issue in smartlist_string_num_isin(),
+      where if the function had ever in the future been used to check
+      for the presence of a too-large number, it would have given an
+      incorrect result.  (Fortunately, we only used it for 16-bit
+      values.)  Fixes bug 3175; bugfix on Tor 0.1.0.1-rc.
+
index ca49cbb17021d002e06834129693c10a8797e1b5..da44b7fe68a3a453c1f21f763d80436ea03b4113 100644 (file)
@@ -210,7 +210,7 @@ smartlist_string_isin_case(const smartlist_t *sl, const char *element)
 int
 smartlist_string_num_isin(const smartlist_t *sl, int num)
 {
-  char buf[16];
+  char buf[32]; /* long enough for 64-bit int, and then some. */
   tor_snprintf(buf,sizeof(buf),"%d", num);
   return smartlist_string_isin(sl, buf);
 }