169 Commits

Author SHA1 Message Date
Nick Mathewson
b0d88e680b Fix epoll fencepost error. Patch most recently from Adam Langley, though I think I have seen others post this before.
svn:r1323
2009-06-04 05:29:04 +00:00
Nick Mathewson
0ec290be04 When __GNUC__ is not defined, use __VA_ARGS__.
svn:r1312
2009-05-25 18:15:44 +00:00
Nick Mathewson
9d0f6eb4e2 Fix a potentially very annoying evdns bug that we found in Tor.
Generally speaking, it way better to event_assign() an event when you
allocate it than to assign it before every time you event_add it: if
it is already event_add()ed, the assign will mess it up so that it
doesn't _look_ added, and event_add() will insert a second copy.
Later, event_del() will only delete the second copy.  Eventually, the
event_base will have a dangling pointer to freed memory.  Ouch!

svn:r1308
2009-05-22 18:32:09 +00:00
Nick Mathewson
6bd85f9d71 Fix compilation warning on win32 with verbose GCC warnings.
svn:r1305
2009-05-22 16:51:10 +00:00
Nick Mathewson
499d0039ad Try to contain the failure when we are running without socketpair().
Some win32 systems (mostly those using Kaspersky, it would seem)
prevent us from faking socketpair().  This makes our signal
notification code just not work.  Our response since 1.4 has been to
assert.  For users who would rather work without signals than not work
at all, this has been a regression from 1.3e.

This patch makes adding signal events fail in this case; there's no
reason to kill the whole process.

svn:r1304
2009-05-22 15:09:43 +00:00
Niels Provos
0f62db5ee3 call it 1.4.11-stable
svn:r1290
2009-05-15 06:22:54 +00:00
Nick Mathewson
9b45a4e7c0 We were distributing the wrong event-config.h with our source distributions. Fix that.
svn:r1288
release-1.4.11-stable
2009-05-15 01:36:31 +00:00
Nick Mathewson
5d639d6c20 Fix win32 compilation warnings in 1.4.
svn:r1287
2009-05-15 01:14:08 +00:00
Nick Mathewson
5e0563ba9a Fix dangling pointer in epoll after epoll_recalc().
This is based on patch 2790759 from Kevin Springborn.  His comments on
sourceforge:

  Problem:
  The failure case is as follows: Event is added using epoll_add (a
  direct pointer is stored in the user_data section), epoll_recalc is
  called and the fds array is moved (invalidating the user_data
  pointer stored in epoll).  epoll_dispatch is called for the added
  event and accesses evepoll based on the invalid pointer (set before
  the fds array was relocated).

  Solution:
  Dispatch has access to the epollop structure, so given the fd we can
  find the corresponding evepoll struct. Use data.fd instead of
  data.ptr and store the fd corresponding to the event. This way when
  epoll_recalc moves the fds array (and updates the fds array pointer
  in epollop), the evepoll calculation in dispatch still finds the
  valid evepoll struct.

svn:r1282
2009-05-12 18:27:45 +00:00
Nick Mathewson
a276fa5155 Fix warnings in compilation of regress.c.
svn:r1281
2009-05-12 18:27:34 +00:00
Niels Provos
23967f73a2 Remove the limit on size of HTTP headers by removing static buffers
svn:r1240
2009-04-24 16:08:30 +00:00
Nick Mathewson
749f4ce319 [backport] Fix min_heap_erase when we remove an element from the middle of the heap.
Previously, we could lose the heap property when we removed an item
whose parent was greater than the last element in the heap.  We would
replace the removed item with the last element, and consider shifting
it down, but we wouldn't consider shifting it up.

Patch from Marko Kreen.

svn:r1227
2009-04-23 00:02:19 +00:00
Niels Provos
4d4a7d55ad call it 1.4.10
svn:r1178
2009-04-17 00:37:21 +00:00
Niels Provos
1a51887386 from trunk: improve evhttp_parse_query documentation
svn:r1161
release-1.4.10-stable
2009-04-12 23:00:52 +00:00
Niels Provos
c1bd938562 Fix parsing of queries where the encoded queries contained \r, \n or +
svn:r1155
2009-04-11 04:12:46 +00:00
Niels Provos
64b3a571ec correct evbuffer_drain documentation from John Khvatov
svn:r1128
2009-03-30 17:36:59 +00:00
Niels Provos
59513ee206 from trunk: include Doxyfile in tar ball; from Jeff Garzik
svn:r1126
2009-03-12 17:45:13 +00:00
Niels Provos
f06b29b9e2 off-by-one error in epoll_recalc; reported by Victor Goya
svn:r1124
2009-03-12 17:03:21 +00:00
Nick Mathewson
4cf8138b8f Make evdns_resolve_reverse args const.
svn:r1094
2009-02-02 19:20:49 +00:00
Niels Provos
62d605467f we dont use an m4 directory for 1.4 - remove it
svn:r1045
2009-01-23 17:21:17 +00:00
Niels Provos
092baefa4e from trunk: fix signal processing for non-kqueue backends; when a signal callback delivers a signal; from Alexander Drozdov
svn:r1036
2009-01-22 06:26:32 +00:00
Niels Provos
636e74a7b9 from trunk: rename sys/signal.h to signal.h; configure m4 macro dir; this assist with compilation on Haiku
svn:r1034
2009-01-22 02:49:57 +00:00
Niels Provos
7682ff80ba from trunk: rename the backend from "event ports" to "evport" - this will allow environment based disabling to work
svn:r1029
2009-01-19 23:54:27 +00:00
Niels Provos
3b33618f74 forgot ChangeLog entry
svn:r1028
2009-01-19 23:53:45 +00:00
Niels Provos
0ede290b3a from trunk: bug fix and potentital race condition from Alexander Drozdov
svn:r1026
2009-01-19 23:42:19 +00:00
Niels Provos
64fc3c7c30 clean up buffered data on reset; reported by Brian O'Kelley
svn:r1016
2009-01-16 00:29:27 +00:00
Niels Provos
12d911b5ad from trunk: rename time-test in comment to signal-test
svn:r1014
2009-01-15 06:16:07 +00:00
Niels Provos
6ae6c9ebaa call it 1.4.9-stable
svn:r970
2008-12-22 07:36:38 +00:00
Niels Provos
cad8703a2a Fix a memory leak by not running explicit close detection for server connections.
svn:r967
release-1.4.9-stable
2008-12-19 22:29:41 +00:00
Niels Provos
f383ee29d9 revert: Fix a memory leak with http connections owned by the server.
svn:r966
2008-12-19 21:53:23 +00:00
Niels Provos
3e55a52926 Fix a memory leak with http connections owned by the server.
svn:r965
2008-12-19 21:41:03 +00:00
Niels Provos
9dcf11060a fix a memory leak when reading multi-line headers
svn:r964
2008-12-19 21:34:12 +00:00
Niels Provos
dfa9cb5d9b from trunk: constify structs; from Andrei Nigmatulin
svn:r960
2008-12-13 06:12:05 +00:00
Niels Provos
1958f3a7ba from trunk: fix a typo in setting the global event base; reported by lance
svn:r954
2008-11-27 19:59:06 +00:00
Niels Provos
e92d88c576 from trunk: Clear the timer cache when leaving the event loop; reported by Robin Haberkorn
svn:r951
2008-11-27 19:29:22 +00:00
Niels Provos
0a41d762ec from trunk: Allow setting of local port for evhttp connections to support millions of connections from a single system; from Richard Jones
svn:r949
2008-11-16 23:26:38 +00:00
Niels Provos
3ad06489ee from trunk: only bind the socket on connect when a local address has been provided; reported by Ajejo Sanchez
svn:r947
2008-11-15 05:29:39 +00:00
Niels Provos
b93c182ff3 from trunk: clear the timer cache on entering event loop; reported by Victor Chang
svn:r945
2008-10-30 19:40:35 +00:00
Niels Provos
111ddeddac fix merge error: event_add would not return error for some backends; from Dean McNamee
svn:r943
2008-10-03 15:23:47 +00:00
Niels Provos
16a6612984 call it 1.4.8-stable; increment revision (i hope that is right)
svn:r940
2008-09-07 23:29:37 +00:00
Niels Provos
69119a402e from trunk: do not remove accept-encoding header in make request
svn:r939
release-1.4.8-stable
2008-09-07 23:26:47 +00:00
Niels Provos
48c6e51db2 missed from previous submit; been a long day
svn:r935
2008-09-04 01:25:18 +00:00
Niels Provos
d2386bce75 Fix a merge problem in which name_from_addr returned pointers to the stack; found by Jiang Hong.
svn:r934
2008-09-04 01:09:54 +00:00
Niels Provos
1fc7059cbe forgot to commit the 1.4.7-stable name
svn:r933
2008-09-04 01:09:03 +00:00
Niels Provos
bc465d0a80 from trunk: Match the query in DNS replies to the query in the request; from Vsevolod Stakhov
svn:r932
2008-08-30 23:24:25 +00:00
Niels Provos
2821152f7f from trunk: Fix a bug where headers arriving in multiple packets were not parsed; fix from Jiang Hong; test by me.
svn:r929
2008-08-19 11:38:32 +00:00
Niels Provos
abe3ac118c from trunk: do not warn on accept when errno is egain|eintr
svn:r926
release-1.4.7-stable
2008-07-25 05:23:30 +00:00
Niels Provos
541290f635 from trunk: make event_add not change any state if it fails; repoted by Ian Bell
svn:r924
release-1.4.6
2008-07-25 01:34:22 +00:00
Niels Provos
534f6657f8 from trunk: fix off by one errors in devpoll; from Ian Bell
svn:r922
2008-07-25 01:19:53 +00:00
Niels Provos
975b102180 start calling it 1.4.6-stable
svn:r920
2008-07-25 00:54:28 +00:00