mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Add directory format fix to debian's 0.1.1.8-alpha-1
svn:r5232
This commit is contained in:
parent
c48ccf9db4
commit
e459f6ee0f
6
debian/changelog
vendored
6
debian/changelog
vendored
@ -1,8 +1,12 @@
|
||||
tor (0.1.1.8-alpha-1) experimental; urgency=low
|
||||
|
||||
* New upstream version.
|
||||
* Add patch from CVS to
|
||||
"Insert a newline between all router descriptors when generating (old
|
||||
style) signed directories, in case somebody was counting on that".
|
||||
r1.247 of dirserv.c, <20051008060243.85F41140808C@moria.seul.org>
|
||||
|
||||
-- Peter Palfrader <weasel@debian.org> Sat, 8 Oct 2005 00:26:29 +0200
|
||||
-- Peter Palfrader <weasel@debian.org> Sat, 8 Oct 2005 20:24:39 +0200
|
||||
|
||||
tor (0.1.1.7-alpha-1) experimental; urgency=low
|
||||
|
||||
|
1
debian/patches/00list
vendored
1
debian/patches/00list
vendored
@ -2,3 +2,4 @@
|
||||
03_tor_manpage_in_section_8.dpatch
|
||||
06_add_compile_time_defaults.dpatch
|
||||
07_log_to_file_by_default.dpatch
|
||||
08_add_newlines_between_serverdescriptors
|
||||
|
66
debian/patches/08_add_newlines_between_serverdescriptors.dpatch
vendored
Executable file
66
debian/patches/08_add_newlines_between_serverdescriptors.dpatch
vendored
Executable file
@ -0,0 +1,66 @@
|
||||
#! /bin/sh -e
|
||||
## 07_log_to_file_by_default.dpatch by <weasel@debian.org>
|
||||
##
|
||||
## All lines beginning with `## DP:' are a description of the patch.
|
||||
## DP: No description.
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
|
||||
patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
|
||||
|
||||
case "$1" in
|
||||
-patch) patch -p1 ${patch_opts} < $0;;
|
||||
-unpatch) patch -R -p1 ${patch_opts} < $0;;
|
||||
*)
|
||||
echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
|
||||
exit 1;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
@DPATCH@
|
||||
diff -u -d -r1.246 -r1.247
|
||||
--- tor-0.1.1.9/src/or/dirserv.c 6 Oct 2005 04:33:40 -0000 1.246
|
||||
+++ /tmp/dpep.YwfNhI/tor-0.1.1.9/src/or/dirserv.c 8 Oct 2005 06:02:41 -0000 1.247
|
||||
@@ -731,6 +731,7 @@
|
||||
dirserv_dump_directory_to_string(char **dir_out,
|
||||
crypto_pk_env_t *private_key)
|
||||
{
|
||||
+ char *cp;
|
||||
char *router_status;
|
||||
char *identity_pkey; /* Identity key, DER64-encoded. */
|
||||
char *recommended_versions;
|
||||
@@ -765,7 +766,7 @@
|
||||
buf_len = 2048+strlen(recommended_versions)+
|
||||
strlen(router_status);
|
||||
SMARTLIST_FOREACH(descriptor_list, routerinfo_t *, ri,
|
||||
- buf_len += ri->signed_descriptor_len);
|
||||
+ buf_len += ri->signed_descriptor_len+1);
|
||||
buf = tor_malloc(buf_len);
|
||||
/* We'll be comparing against buf_len throughout the rest of the
|
||||
function, though strictly speaking we shouldn't be able to exceed
|
||||
@@ -785,9 +786,17 @@
|
||||
tor_free(router_status);
|
||||
tor_free(identity_pkey);
|
||||
|
||||
+ cp = buf + strlen(buf);
|
||||
SMARTLIST_FOREACH(descriptor_list, routerinfo_t *, ri,
|
||||
- if (strlcat(buf, ri->signed_descriptor, buf_len) >= buf_len)
|
||||
- goto truncated);
|
||||
+ {
|
||||
+ if (cp+ri->signed_descriptor_len+1 >= buf+buf_len)
|
||||
+ goto truncated;
|
||||
+ memcpy(cp, ri->signed_descriptor, ri->signed_descriptor_len);
|
||||
+ cp += ri->signed_descriptor_len;
|
||||
+ *cp++ = '\n'; /* add an extra newline in case somebody was depending on
|
||||
+ * it. */
|
||||
+ });
|
||||
+ *cp = '\0';
|
||||
|
||||
/* These multiple strlcat calls are inefficient, but dwarfed by the RSA
|
||||
signature.
|
||||
|
Loading…
Reference in New Issue
Block a user