]>
code.citadel.org Git - citadel.git/log
Art Cancro [Mon, 18 Jul 2011 20:21:29 +0000 (16:21 -0400)]
Wrap all calls to pthread_mutex_lock() and pthread_mutex_unlock() within CtdlLogResult()
Art Cancro [Mon, 18 Jul 2011 20:19:45 +0000 (16:19 -0400)]
Convenience function CtdlLogResult()
Wilfried Goesgens [Sun, 10 Jul 2011 13:40:38 +0000 (13:40 +0000)]
finalize allocation & freeing of rss stuff
Wilfried Goesgens [Sat, 9 Jul 2011 20:50:48 +0000 (20:50 +0000)]
make shure invalid session fd's don't get set into the central select.
Wilfried Goesgens [Sat, 9 Jul 2011 20:50:33 +0000 (20:50 +0000)]
use right struct for memset.
Wilfried Goesgens [Thu, 7 Jul 2011 22:37:22 +0000 (22:37 +0000)]
work on making RSS aggregator instances and roomlists consistant.
Wilfried Goesgens [Thu, 7 Jul 2011 19:50:26 +0000 (19:50 +0000)]
Fix documentation
- fix bug about escaping in strbuf
- link Hashlist Componets to groups so they can be easily accessed.
Wilfried Goesgens [Sun, 3 Jul 2011 22:35:27 +0000 (22:35 +0000)]
fix conditions where several rooms read the same RSS feed
Wilfried Goesgens [Sun, 3 Jul 2011 22:34:03 +0000 (22:34 +0000)]
merge in euid generation from master
Wilfried Goesgens [Sun, 3 Jul 2011 13:49:59 +0000 (13:49 +0000)]
first working RSS collection with async DB-Saves
- for now, no shorter URL expansion
- replace handling of configs, old algorythm wasn't thread-safe
- DB i/o is done in its own libev Queue in its own thread now; so we don't block network IO with database IO.
Wilfried Goesgens [Sun, 3 Jul 2011 13:47:55 +0000 (13:47 +0000)]
Add ability to hex encode binary strings
- when encoding plain md5 binary buffers we have to pass the length into the hex encoder, add parameter
- add wrapper providing old schematic
- fix documentation of StrBufSipLine()
Wilfried Goesgens [Sat, 25 Jun 2011 07:12:46 +0000 (07:12 +0000)]
more work on libevĀ“ing the rss-reader.
Wilfried Goesgens [Mon, 6 Jun 2011 19:33:58 +0000 (19:33 +0000)]
fix loop / handling error when connecting fails immediately
- add new ev_idle to unwind the stack on connecting
- add a new handler that processes the disconnect
Wilfried Goesgens [Sun, 5 Jun 2011 21:22:37 +0000 (21:22 +0000)]
fix pointer indirections so we now can successfully fetch RSS feeds again.
Wilfried Goesgens [Sun, 5 Jun 2011 21:20:17 +0000 (21:20 +0000)]
when not forking, we fail to drop rood privileges in advance before writing netconfig files, so we loose later access to them. Sadly we don't know our GID...
Wilfried Goesgens [Sun, 5 Jun 2011 16:48:06 +0000 (16:48 +0000)]
move stuff out into own files from here...
Wilfried Goesgens [Sun, 5 Jun 2011 16:46:41 +0000 (16:46 +0000)]
Split RSS Parser...
- URL-De-Shortener module
- RSS/ATOM Handlers
- start migrating to event/curl requests
Wilfried Goesgens [Sun, 5 Jun 2011 16:44:59 +0000 (16:44 +0000)]
if specified, use our bind-ip for the http clients.
Wilfried Goesgens [Sun, 5 Jun 2011 16:42:29 +0000 (16:42 +0000)]
Give us an own Context per notification client.
Wilfried Goesgens [Sun, 5 Jun 2011 16:41:39 +0000 (16:41 +0000)]
rebuilt from .y
Wilfried Goesgens [Sun, 5 Jun 2011 15:28:24 +0000 (15:28 +0000)]
* make it const baby.
Wilfried Goesgens [Sun, 5 Jun 2011 13:49:09 +0000 (13:49 +0000)]
Free all our allocated resources after notifying / sending a http request.
Wilfried Goesgens [Mon, 30 May 2011 21:52:00 +0000 (21:52 +0000)]
finish rewriting of http client code
- we now have a context
- we now handle replies
- still some uncertain cleanup condition.
Wilfried Goesgens [Sat, 21 May 2011 20:09:39 +0000 (20:09 +0000)]
Migrate http context struct into the AsyncIO struct; streamline other structs.
Wilfried Goesgens [Sat, 21 May 2011 13:08:23 +0000 (13:08 +0000)]
unlink global struct and request structs
Wilfried Goesgens [Thu, 19 May 2011 21:19:25 +0000 (21:19 +0000)]
Fix unfolding of RFC822 lines so we don't loose blanks.
Wilfried Goesgens [Wed, 18 May 2011 21:35:30 +0000 (21:35 +0000)]
Don't overwrite the 'TO' when sending mailinglist mails; we put ourselves into 'reply to:'
Wilfried Goesgens [Sun, 15 May 2011 21:11:03 +0000 (21:11 +0000)]
Rewrite loading of notify configurations
Wilfried Goesgens [Sun, 15 May 2011 14:12:15 +0000 (14:12 +0000)]
sending http requests instant now.
Wilfried Goesgens [Sun, 15 May 2011 10:43:11 +0000 (10:43 +0000)]
work on libev <-> libcurl integration
- move libcurl handlers into the libev file; they need to be initialized to close to separate
- add some logging;
First successfull CURL notification via libev!
Wilfried Goesgens [Sun, 15 May 2011 10:42:26 +0000 (10:42 +0000)]
Fix parsing and rearaning of URLs
Wilfried Goesgens [Sat, 14 May 2011 14:28:50 +0000 (14:28 +0000)]
don't copy filedescriptors into the clone.
Wilfried Goesgens [Sat, 14 May 2011 10:23:48 +0000 (10:23 +0000)]
more work on async http
Wilfried Goesgens [Sat, 14 May 2011 09:49:43 +0000 (09:49 +0000)]
Memleak: free the vector of URLs to try to connect to.
Wilfried Goesgens [Tue, 10 May 2011 22:05:46 +0000 (22:05 +0000)]
just log the close if we're realy going to close.
Wilfried Goesgens [Tue, 10 May 2011 22:03:20 +0000 (22:03 +0000)]
Don't close 0-filedescriptors on session killing, its our indicator for not here, since 0 equals STDIN which at best is redirected to /dev/null
Wilfried Goesgens [Mon, 9 May 2011 21:44:48 +0000 (21:44 +0000)]
use long hash function, if we intend to use long values as keys, else we won't find anything
Wilfried Goesgens [Sun, 8 May 2011 17:43:46 +0000 (17:43 +0000)]
Stop watchers / don't close 0
Wilfried Goesgens [Sun, 8 May 2011 12:00:04 +0000 (12:00 +0000)]
work on errorhandling for the smtp event client
- add states for the mx lookup phases
- return the propper states
- close filedescriptors if we fail one attempt
- say which connection type we have: immediate, e_again, fail
- say which NS-lookup whe do (a/aaaa)
Wilfried Goesgens [Sun, 8 May 2011 11:58:27 +0000 (11:58 +0000)]
Add backtrace debugging facility that doesn't add linebreaks
Wilfried Goesgens [Sun, 8 May 2011 11:53:34 +0000 (11:53 +0000)]
libevent needs to link the mathlib, so we add -lm
Wilfried Goesgens [Tue, 3 May 2011 20:11:46 +0000 (20:11 +0000)]
ups, .lo not .o
Wilfried Goesgens [Tue, 3 May 2011 19:55:11 +0000 (19:55 +0000)]
add prerelease so we don't get deinstalled all the time..
Wilfried Goesgens [Tue, 3 May 2011 19:53:26 +0000 (19:53 +0000)]
fix problem with po missing \n
Wilfried Goesgens [Tue, 3 May 2011 19:52:05 +0000 (19:52 +0000)]
Work on integrating libcurl <-> libev
Wilfried Goesgens [Tue, 3 May 2011 19:49:23 +0000 (19:49 +0000)]
Fix possible endless loop conditions
Wilfried Goesgens [Thu, 28 Apr 2011 19:20:52 +0000 (19:20 +0000)]
Various cleanups of abort conditions
- if the timeout/connectionfail/... calls tell us to abort, shutdown the client
- unregister all event structs
Wilfried Goesgens [Thu, 28 Apr 2011 19:10:56 +0000 (19:10 +0000)]
Name of MX in error messages
- set it after successfull MX lookup
- put in that we don't have an mx record if its NULL instead of 'no name'
Wilfried Goesgens [Thu, 28 Apr 2011 19:09:53 +0000 (19:09 +0000)]
fix gcc warning about it not knowing which pointer indirection is const...
Wilfried Goesgens [Tue, 19 Apr 2011 19:55:16 +0000 (19:55 +0000)]
Include ourselves??
Wilfried Goesgens [Tue, 19 Apr 2011 19:50:55 +0000 (19:50 +0000)]
Fix Crash
* check pointer before accessing it
* fix probably uninitialized case
Wilfried Goesgens [Sat, 2 Apr 2011 15:56:18 +0000 (17:56 +0200)]
Give event clients a citadel session context.
Wilfried Goesgens [Sat, 2 Apr 2011 15:24:17 +0000 (17:24 +0200)]
Cleanup the event client struct, remove unused vars
Wilfried Goesgens [Sat, 2 Apr 2011 10:18:49 +0000 (12:18 +0200)]
just use the ParsedURL to bear our destination address & port
Wilfried Goesgens [Sat, 2 Apr 2011 09:26:07 +0000 (11:26 +0200)]
Use IOBuffer with its StrBuf + const char* inside instead of having two of them
Wilfried Goesgens [Fri, 1 Apr 2011 21:48:57 +0000 (23:48 +0200)]
implement abort handling
Wilfried Goesgens [Fri, 1 Apr 2011 19:56:20 +0000 (21:56 +0200)]
Switch handling to have a pointer to the target address
- change URL struct to contain sockaddr_in6
- change URL-Parsing to add that indirection
- change all pointer indirections so the new way fits
Wilfried Goesgens [Fri, 1 Apr 2011 14:51:48 +0000 (16:51 +0200)]
move URL parsing / struct over into libcitadel
Wilfried Goesgens [Thu, 31 Mar 2011 22:50:43 +0000 (00:50 +0200)]
Fix searching of ']'
Wilfried Goesgens [Thu, 31 Mar 2011 21:21:10 +0000 (23:21 +0200)]
Add busines logic for toggling multiple mx records etc.
- move handlers into their own file
- chain up stuff via URL-structs
(not yet all done)
Wilfried Goesgens [Thu, 31 Mar 2011 21:11:14 +0000 (23:11 +0200)]
Mailinglist client: don't add roomname to subject if its already there
Wilfried Goesgens [Mon, 21 Feb 2011 22:13:33 +0000 (23:13 +0100)]
fixing html2ascii
- add possibility to scan 4 digit entities
- don't scan over the end
- add tests
Wilfried Goesgens [Thu, 3 Feb 2011 21:34:38 +0000 (22:34 +0100)]
libev migration: start out with creating support for 'fallbackhost'
Wilfried Goesgens [Wed, 2 Feb 2011 20:34:49 +0000 (21:34 +0100)]
libev/c-ares migration; fix lookup chains
- use idle-watchers for unwinding the c-ares stack (thanks to Marc Lehmann for the hint)
- use the generic c-ares query & parse logic instead of the integrated call; we need to first do the a then fall back to the aaaa request which the c-ares default one doesn't implement
- stop the shutdown watchers when finalizing one client
Wilfried Goesgens [Mon, 31 Jan 2011 00:35:40 +0000 (01:35 +0100)]
libev migration - add shutdown handlers
- this ties us to libev > 4.0
- clean shutdown and storing of the new state in our quue
Wilfried Goesgens [Sun, 30 Jan 2011 23:10:11 +0000 (00:10 +0100)]
libev migration: use async methods to schedule jobs. thanks to Marc Lehmann for the friendly help.
Wilfried Goesgens [Sun, 30 Jan 2011 20:28:35 +0000 (21:28 +0100)]
libev migration - copy valus we use for loop control before we hand it off into the libevent queue
- this fixes a race condition causing a double free with the to be copied mailpayload
Wilfried Goesgens [Sun, 30 Jan 2011 14:29:59 +0000 (15:29 +0100)]
Merge branch 'libevent' of ssh://git.citadel.org/appl/gitroot/citadel into libevent
Wilfried Goesgens [Sun, 30 Jan 2011 14:27:29 +0000 (15:27 +0100)]
libev/c-ares migration: unstack out ouf c-ares before querying new requests
- we use the c-ares callback to parse the DNS reply and put the reply to our callback
- we then set a zero-timer with the call to continue our flow
- we return / unstack c-ares
- we then do the a/aaaa record lookup without having another ares lookup in our stack
this circumvents double dns lookups.
Wilfried Goesgens [Sun, 30 Jan 2011 12:14:05 +0000 (13:14 +0100)]
QP-Decoding: Ignore case of letter indicating _B_inary or _Q_uoted printeable, there seem to be solutions around sending q,b instead of Q,B
Wilfried Goesgens [Sun, 30 Jan 2011 11:12:44 +0000 (12:12 +0100)]
by jimcuclamath: use defines instead of numbers for logging; Change some loglevels to DEBUG
Wilfried Goesgens [Tue, 25 Jan 2011 22:51:22 +0000 (23:51 +0100)]
fix ipv6 connections in smtp client
Wilfried Goesgens [Tue, 25 Jan 2011 20:15:25 +0000 (21:15 +0100)]
fix IPv6 relay url parsing
Wilfried Goesgens [Mon, 24 Jan 2011 23:22:49 +0000 (00:22 +0100)]
libev migration: check pointer before free'ing it.
Wilfried Goesgens [Sun, 23 Jan 2011 22:10:51 +0000 (23:10 +0100)]
libev migration / c-ares migration
- free c-ares structs and its watchers in appropriate places
- finalize relaying
Wilfried Goesgens [Sun, 23 Jan 2011 19:21:20 +0000 (20:21 +0100)]
libev migration; relaying implementation
- move translation of DNS-results up into the SMTP-Client
- use an own callback for connecting to IP-based relays
- add assertions to callbacks being NULL, since after callin a NULL-callback the last stackframe is NIL and Void, and we can't see where we went off into misery.
Wilfried Goesgens [Thu, 20 Jan 2011 23:20:07 +0000 (00:20 +0100)]
libev migration: reinstantiate MX-Relay; unfinished.
Wilfried Goesgens [Sun, 16 Jan 2011 17:49:33 +0000 (18:49 +0100)]
libev migration: remove 127.0.0.1 forcing
Wilfried Goesgens [Sun, 16 Jan 2011 17:46:56 +0000 (18:46 +0100)]
Libev migration:
- timeouts implemented & working
- async connects working
Wilfried Goesgens [Sat, 15 Jan 2011 19:57:34 +0000 (20:57 +0100)]
libev migration - timeouts seem to be working.
- handle timeouts with libev timers
Wilfried Goesgens [Sat, 15 Jan 2011 18:10:48 +0000 (19:10 +0100)]
libev migration; cleanup bounce; use libev to get the current time.
Wilfried Goesgens [Sat, 15 Jan 2011 17:47:03 +0000 (18:47 +0100)]
use the gnu format string checker for CtdlLogPrintf; fix associated new warnings / problems.
Wilfried Goesgens [Sat, 15 Jan 2011 16:21:16 +0000 (17:21 +0100)]
Libev migration Cleanup, print resolved IP to log
Wilfried Goesgens [Sat, 15 Jan 2011 15:18:10 +0000 (16:18 +0100)]
Libev Migration; fix aborting on connection establishing problems
- libev doesn't care whether a watcher is already registered or not, we don't need to remember which to stop and which not.
- cast to the right structure while aborting
- put timeout callback in
- register timeout callback
- close our socket in the right place.
Wilfried Goesgens [Sat, 15 Jan 2011 15:16:43 +0000 (16:16 +0100)]
Fix bouncing of messages in smtp-queue
- free boundary when barfing out
- put the message body on the right citadel message collumn
Wilfried Goesgens [Sat, 15 Jan 2011 15:14:16 +0000 (16:14 +0100)]
Mimeparser rewrite; fix bug detecting trailing MIME-Boundary
- when searching for the '--' after the mime boundary to detect whether its the last, we had an off by one. fixed.
Wilfried Goesgens [Sat, 15 Jan 2011 10:45:46 +0000 (11:45 +0100)]
libev migration - fix queue conditions
- handle messages without recipients
- remove the the original message when we finished our job.
Wilfried Goesgens [Sat, 15 Jan 2011 10:45:10 +0000 (11:45 +0100)]
Libev migration
- the error message doesn't belong to us; we mustn't free it here.
Wilfried Goesgens [Mon, 10 Jan 2011 22:49:15 +0000 (23:49 +0100)]
remove unneeded include; smtp_get_Recipients() is just of use when being in a SMTP-Server context, which we don't have in the outbound-Queue
Wilfried Goesgens [Mon, 10 Jan 2011 22:38:36 +0000 (23:38 +0100)]
Libev / libc-ares Migration
- Bounce-o-matic:
- use parsend Queue structure instead of parsing the queue message ourselves
- only Compose the bounce message, if we're shure we'll need it
- malloc all memory first, and fail if..
- restructure Message Queue documentation
- parse not yet identified Submitted-Header into queue item
- Alloc QueueItem->StatusMessage on creation so we have it easier writing it later
- Start implementing timeout/abort conditions
- c-ares integration: start/stop the right event-watchers
- c-ares integration: give it its own watcher structs
Wilfried Goesgens [Sat, 8 Jan 2011 21:31:34 +0000 (22:31 +0100)]
libev/libc-ares migration
- no, c-ares does need a write and a send wrapper.
Wilfried Goesgens [Sat, 8 Jan 2011 19:55:44 +0000 (20:55 +0100)]
libev smtp migration
- pass message text into bounce message
- split SMTP <-> SMTP-Queue code
Wilfried Goesgens [Sat, 8 Jan 2011 17:54:03 +0000 (18:54 +0100)]
libev migration
Cleanup: wrap an empty do {} while (0) around our macros, so their syntax gets a better feeling of c-functions
Wilfried Goesgens [Sat, 8 Jan 2011 17:50:16 +0000 (18:50 +0100)]
libev migration
- log when looking up the IP of an MX
- log when attepting to connect one MX
Wilfried Goesgens [Sat, 8 Jan 2011 17:32:56 +0000 (18:32 +0100)]
Libev/libc-ares migration: cleanup
Wilfried Goesgens [Sat, 8 Jan 2011 16:17:06 +0000 (17:17 +0100)]
libev-migration
- got the wrong interpretation of the pointer;
First mails leave citadel after a successfull DNS-Query!
Wilfried Goesgens [Sat, 8 Jan 2011 16:16:18 +0000 (17:16 +0100)]
libc-ares migration
- ev_io_stop removes us from the list, but we still want to receive stuff.
Wilfried Goesgens [Sat, 8 Jan 2011 14:13:18 +0000 (15:13 +0100)]
libc-ares migration
- just use one callback for read/send into libevent
- re-enable c-ares; still doesn't work
Wilfried Goesgens [Sat, 8 Jan 2011 10:41:56 +0000 (11:41 +0100)]
libev migration
- libevent doesn't require a special async connect mechanic, remove it.
Wilfried Goesgens [Fri, 7 Jan 2011 11:05:22 +0000 (12:05 +0100)]
libev/libc-ares migration
- disable c-ares for now
- add fixed ip to connect instead of looked up ip