]>
code.citadel.org Git - citadel.git/log
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
Wilfried Goesgens [Fri, 7 Jan 2011 11:04:21 +0000 (12:04 +0100)]
libev migration - shutdown cleanly.
Wilfried Goesgens [Tue, 4 Jan 2011 23:28:13 +0000 (00:28 +0100)]
libev/libc-ares migration
- resolving of the ip address is working now too; handling whether its an ipv6 host still missing.
- libev doesn't succeed on doing async connect()
Wilfried Goesgens [Mon, 3 Jan 2011 23:33:30 +0000 (00:33 +0100)]
libc-ares migration
- call the ares read/write handlers in our registered read/write callbacks
- set context appropriate.
Wilfried Goesgens [Mon, 3 Jan 2011 23:33:00 +0000 (00:33 +0100)]
libev migration
- fix spawning of event-queue thread.
Wilfried Goesgens [Mon, 3 Jan 2011 23:00:47 +0000 (00:00 +0100)]
libev/libc-ares migration
- move c-ares query into the eventqueue context
- queueing of the new context via the pipe doesn't work anymore with libev
Wilfried Goesgens [Mon, 3 Jan 2011 15:36:43 +0000 (16:36 +0100)]
libc-ares migration - first implementation draft
- dns queries are going out, but the reply isn't read so far.
Wilfried Goesgens [Sat, 1 Jan 2011 18:14:51 +0000 (19:14 +0100)]
libev migration
- make connect() async; add wrappers in event_client to abstract it to our clients
- switch libevent -> libev
- start abstraction for dns asynchronisation via c-ares
Wilfried Goesgens [Sat, 1 Jan 2011 17:00:42 +0000 (18:00 +0100)]
Libev / libcares : add build dependencies
Wilfried Goesgens [Sat, 1 Jan 2011 16:59:50 +0000 (17:59 +0100)]
libevent migration: discarded, make this libev
- detect c-ares
- detect libev
Wilfried Goesgens [Mon, 27 Dec 2010 15:45:53 +0000 (16:45 +0100)]
Libevent Migration
- use a bigger read buffer for the smtp client
- differentiate between queue and smtp client in log messages
- migrate scheduling of jobs to a locked list
Wilfried Goesgens [Mon, 27 Dec 2010 15:39:16 +0000 (16:39 +0100)]
Libevent Migration
- change the place where we check the space for the \0 for reading
- we didn't check the case to increase the buffer while reading if the reading algorithm didn't find a complete line yet...
Wilfried Goesgens [Mon, 27 Dec 2010 15:38:30 +0000 (16:38 +0100)]
Hashlist: add function to flush the contents of a hashlist.
Wilfried Goesgens [Sun, 26 Dec 2010 12:23:42 +0000 (13:23 +0100)]
Libevent Migration
- handle the SMTP-reply-stati in a propper way
- skip empty lines while serializing messages
Wilfried Goesgens [Sun, 26 Dec 2010 12:22:55 +0000 (13:22 +0100)]
StrBuf_NextToken: if the source is empty, flush the target.
Wilfried Goesgens [Sun, 26 Dec 2010 10:56:41 +0000 (11:56 +0100)]
libevent Migration:
- hook in libevent into shutdown mechanism, so we can cleanly shutdown citserver again.
Wilfried Goesgens [Sun, 26 Dec 2010 10:40:54 +0000 (11:40 +0100)]
libevent Migration
- add a state 'terminate' to the event handlers
- use the Terminate-callback to free all members.
Wilfried Goesgens [Thu, 23 Dec 2010 00:09:14 +0000 (01:09 +0100)]
Libevent Integration
- move bounce into util
- rewrite parsing of queue entry; keep structure in memory, serialize after last message is sent.
Wilfried Goesgens [Tue, 21 Dec 2010 23:40:34 +0000 (00:40 +0100)]
Libevent integration
- add a configure option --with-experimental_eventsmtp to enable the following items
- add a thread that spawns a signaling pipe plus the libevent queue
- add functions that allow to add jobs via that signalling pipe
- add experimental smtp queue handler sending messages via libevent (message goes out but then... ;-)
Wilfried Goesgens [Tue, 21 Dec 2010 23:37:55 +0000 (00:37 +0100)]
libevent integration
- Add functions that are able to do just one read()/write() so they can be used as libevent callbacks.
- Add linereader function that reads from "incomplete buffers" and falls back to a re-attemt if not enough data is available.
Art Cancro [Mon, 20 Dec 2010 04:12:19 +0000 (23:12 -0500)]
Replaced client_read() with socket_read_blob() in serv_network.c
Art Cancro [Fri, 17 Dec 2010 19:12:36 +0000 (14:12 -0500)]
Cleaned up the loop that receives network spool. NOT THE FIX
Art Cancro [Fri, 17 Dec 2010 04:10:06 +0000 (23:10 -0500)]
Content-transfer-encoding: ISO-8859-1 joins the 'no encoding' list
Wilfried Goesgens [Wed, 15 Dec 2010 11:44:57 +0000 (12:44 +0100)]
Move: give the SMTP-Client its own file.
- move the SMTP-Client functionality into its own file.
- re-bootstrap so the new files are added to your makefiles!
Wilfried Goesgens [Wed, 15 Dec 2010 09:03:03 +0000 (10:03 +0100)]
Room info in banner should respect utf8 when cutting the text; fixed.
Art Cancro [Tue, 14 Dec 2010 22:13:03 +0000 (17:13 -0500)]
Room info in banner was completely broken. Fixed.
Wilfried Goesgens [Mon, 13 Dec 2010 17:23:31 +0000 (18:23 +0100)]
SMTP Async I/O:
- while sending data, wait relative to the size of the mail /128 + a minimal set of 50.
Art Cancro [Mon, 13 Dec 2010 15:12:25 +0000 (10:12 -0500)]
J-escape instead of U-escape attachment removal urls.
Art Cancro [Mon, 13 Dec 2010 05:02:22 +0000 (00:02 -0500)]
remove attach works now but has filename escape bugs
Art Cancro [Mon, 13 Dec 2010 00:29:21 +0000 (19:29 -0500)]
url binding and skeleton js for remove attachment
Art Cancro [Mon, 13 Dec 2010 00:11:39 +0000 (19:11 -0500)]
Wrote the ajax call for remove_attachment(), todo: js binding
Wilfried Goesgens [Sun, 12 Dec 2010 14:47:14 +0000 (15:47 +0100)]
Mimeparser Bugfix
- use the right pointer to calculate the terminal border of the first memchr
Wilfried Goesgens [Sun, 12 Dec 2010 14:09:49 +0000 (15:09 +0100)]
Ignore all of our test binaries.
Wilfried Goesgens [Sun, 12 Dec 2010 14:06:09 +0000 (15:06 +0100)]
Add possibility to trigger the tests with Valgrind
Wilfried Goesgens [Sun, 12 Dec 2010 14:03:43 +0000 (15:03 +0100)]
Bugfix: several errors in our test program
- initialize the count before passing it into wildfirea
- free all our buffers properly.
Wilfried Goesgens [Sun, 12 Dec 2010 14:02:40 +0000 (15:02 +0100)]
Bugfixing: free our hashpositions...
Art Cancro [Sun, 12 Dec 2010 03:15:35 +0000 (22:15 -0500)]
Attachments count is now updated in navbar
Art Cancro [Sun, 12 Dec 2010 02:23:16 +0000 (21:23 -0500)]
Show throbber during attachment upload
Art Cancro [Sat, 11 Dec 2010 22:24:06 +0000 (17:24 -0500)]
Hide upload box during an upload. TODO: add throbber.
Art Cancro [Sat, 11 Dec 2010 17:41:31 +0000 (12:41 -0500)]
remove image borders in the upload pane
Art Cancro [Sat, 11 Dec 2010 17:36:13 +0000 (12:36 -0500)]
Change 'Attach' to 'Attachments: 0' (updater will follow)
Wilfried Goesgens [Sat, 11 Dec 2010 15:36:07 +0000 (16:36 +0100)]
Integrate IGs tests
- add to run_tests.sh
- wrap c-unit around the test cases...
Art Cancro [Sat, 11 Dec 2010 02:23:52 +0000 (21:23 -0500)]
New upload dialog is now feature complete
Art Cancro [Fri, 10 Dec 2010 21:25:51 +0000 (16:25 -0500)]
Uploading now works. It is ugly but it works.
Art Cancro [Fri, 10 Dec 2010 21:18:58 +0000 (16:18 -0500)]
Perform uploads via a (eventually to be hidden) iframe
Art Cancro [Fri, 10 Dec 2010 18:31:54 +0000 (13:31 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Fri, 10 Dec 2010 18:14:35 +0000 (19:14 +0100)]
Mimeparser Bugfix:
- while parsing the headers, don't forget to \0 the extracted strings.
Wilfried Goesgens [Fri, 10 Dec 2010 18:13:28 +0000 (19:13 +0100)]
Performance improvement / Bugfix Mime handling while outputting messages:
- we switched to decode just that part we'd want to output, we should choose the pointer with the decoded buffer.
Art Cancro [Fri, 10 Dec 2010 17:26:25 +0000 (12:26 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Art Cancro [Fri, 10 Dec 2010 17:26:22 +0000 (12:26 -0500)]
Reworking the enter message and attach dialogs
Wilfried Goesgens [Fri, 10 Dec 2010 17:18:12 +0000 (18:18 +0100)]
Fix typo in translation.
Wilfried Goesgens [Fri, 10 Dec 2010 17:14:40 +0000 (18:14 +0100)]
Mimeparser bugfix; if we continue we must flush the already parsed headers too.
Wilfried Goesgens [Fri, 10 Dec 2010 16:08:54 +0000 (17:08 +0100)]
Hunt for mime_parser bugs...
- don't prepend the content-type/content-length - mime header if we don't intend to use it anyways.
Art Cancro [Thu, 9 Dec 2010 17:07:24 +0000 (12:07 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Thu, 9 Dec 2010 00:05:16 +0000 (01:05 +0100)]
More tiny bugfixes on the mimeparser
- in the for-loop, search first start as initializer, this saves one unneccesary memcmp
- cr/lf detection: we need to do that _before_ the first mime content is evaluated.
Art Cancro [Wed, 8 Dec 2010 14:04:52 +0000 (09:04 -0500)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Art Cancro [Wed, 8 Dec 2010 03:17:47 +0000 (22:17 -0500)]
Added the regression test I wrote while fixing stripallbut() yesterday
Wilfried Goesgens [Tue, 7 Dec 2010 22:30:12 +0000 (23:30 +0100)]
Correctly evaluate whether we have a decoded mime part, or if we need to output the raw content.
Wilfried Goesgens [Tue, 7 Dec 2010 22:20:43 +0000 (23:20 +0100)]
Performance: use memchr to find the next '-' and then call memcmp to check whether this is a boundary
- we fast forward to the next '-' since every mime boundary starts with '-'
- from a '-' we check thorough whether at this point we can find the searched boundary
Thanks to cirrus for pointing me to memchr()
Wilfried Goesgens [Tue, 7 Dec 2010 21:27:52 +0000 (22:27 +0100)]
Add more test-mimecontainers.
Wilfried Goesgens [Tue, 7 Dec 2010 21:24:49 +0000 (22:24 +0100)]
Be more conservative about when not to apply binary searching for the next boundary or not.
Art Cancro [Tue, 7 Dec 2010 16:31:35 +0000 (11:31 -0500)]
Rewrote stripallbut() again, tested extensively
Wilfried Goesgens [Sun, 5 Dec 2010 16:31:26 +0000 (17:31 +0100)]
Add test running our wildfire sample code
Wilfried Goesgens [Sun, 5 Dec 2010 16:30:40 +0000 (17:30 +0100)]
In the name of test-coverage: #if 0 the parts we don't need.
Wilfried Goesgens [Sun, 5 Dec 2010 16:14:43 +0000 (17:14 +0100)]
Don't forget to cleanup gcov output in xdgmime
Wilfried Goesgens [Sun, 5 Dec 2010 14:47:18 +0000 (15:47 +0100)]
More shell calls to all our tests
- look up all our staticaly coded mimetypes from randomly generated filenames
- read all contents we find across all test mimecontainers.
Wilfried Goesgens [Sun, 5 Dec 2010 14:45:21 +0000 (15:45 +0100)]
Add test for loading one mimepart from the mimestructure; decode its content inside.
- this found a bug of a const char being modified inside of the call.
Wilfried Goesgens [Sun, 5 Dec 2010 14:43:46 +0000 (15:43 +0100)]
Add test for looking up the icon for a specific mimetype.
Wilfried Goesgens [Sun, 5 Dec 2010 14:41:19 +0000 (15:41 +0100)]
Don't put a static buffer into content_encoding; its changed inside.
- while decoding thats overwritten. probably a bug sleeping in here waiting for its discovery for a long time.
Wilfried Goesgens [Thu, 2 Dec 2010 00:20:40 +0000 (01:20 +0100)]
Update to launchpad R24
- remove fuzzy strings, launchpad doesn't support them
- add new translation
Wilfried Goesgens [Thu, 2 Dec 2010 00:18:28 +0000 (01:18 +0100)]
add scripts to run and test and have code coverage analysis across them.
Wilfried Goesgens [Thu, 2 Dec 2010 00:17:05 +0000 (01:17 +0100)]
Add possibility to trigger the mimeparser internal encoding-decoder