aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2009-01-22 16:37:09 +0000
committerNick Mathewson <nickm@torproject.org>2009-01-22 16:37:09 +0000
commit2451479cbccbbaeea154c80c08fe2e08142cd425 (patch)
tree7e85323f504cfabba938604076ad79b275b3501f
parent55de7d1f5763df156e39e45d1abd56e43bab72e2 (diff)
downloadtor-2451479cbccbbaeea154c80c08fe2e08142cd425.tar.gz
tor-2451479cbccbbaeea154c80c08fe2e08142cd425.zip
Backport the trivial parts of r18234, especially the one that makes compilation not fail on dev netbsd.
svn:r18236
-rw-r--r--ChangeLog6
-rw-r--r--src/common/torint.h2
-rw-r--r--src/common/util.c2
-rw-r--r--src/or/circuituse.c2
-rw-r--r--src/or/main.c2
5 files changed, 11 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 79255c448a..4106848d1a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Changes in version 0.2.0.34 - 2009-??-??
+ o Minor bugfixes:
+ - Fix compilation on systems where time-t is a 64-bit integer.
+ Patch from Matthias Drochner.
+
+
Changes in version 0.2.0.33 - 2009-01-21
o Security fixes:
- Fix a heap-corruption bug that may be remotely triggerable on
diff --git a/src/common/torint.h b/src/common/torint.h
index 6f515495d1..4ef6c79e5a 100644
--- a/src/common/torint.h
+++ b/src/common/torint.h
@@ -290,6 +290,8 @@ typedef uint32_t uintptr_t;
#define TIME_MAX ((time_t)INT_MAX)
#elif (SIZEOF_TIME_T == SIZEOF_LONG)
#define TIME_MAX ((time_t)LONG_MAX)
+#elif (SIZEOF_TIME_T == 8)
+#define TIME_MAX ((time_t)INT64_MAX)
#else
#error "Can't define (signed) TIME_MAX"
#endif
diff --git a/src/common/util.c b/src/common/util.c
index 221821ed3f..579121219a 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -1011,7 +1011,7 @@ tor_timegm(struct tm *tm)
hours = days*24 + tm->tm_hour;
minutes = hours*60 + tm->tm_min;
- ret = minutes*60 + tm->tm_sec;
+ ret = ((time_t)minutes)*60 + tm->tm_sec;
return ret;
}
diff --git a/src/or/circuituse.c b/src/or/circuituse.c
index 083f21567e..6710699c92 100644
--- a/src/or/circuituse.c
+++ b/src/or/circuituse.c
@@ -472,7 +472,7 @@ circuit_predict_and_launch_new(void)
void
circuit_build_needed_circs(time_t now)
{
- static long time_to_new_circuit = 0;
+ static time_t time_to_new_circuit = 0;
or_options_t *options = get_options();
/* launch a new circ for any pending streams that need one */
diff --git a/src/or/main.c b/src/or/main.c
index 165babaa75..e4d84ac99c 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -1178,7 +1178,7 @@ second_elapsed_callback(int fd, short event, void *args)
* could use libevent's timers for this rather than checking the current
* time against a bunch of timeouts every second. */
static struct timeval one_second;
- static long current_second = 0;
+ static time_t current_second = 0;
struct timeval now;
size_t bytes_written;
size_t bytes_read;