]>
code.citadel.org Git - citadel.git/log
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
Wilfried Goesgens [Thu, 2 Dec 2010 00:14:53 +0000 (01:14 +0100)]
Testdata: add an email with base64 encoded content.
Wilfried Goesgens [Thu, 2 Dec 2010 00:14:10 +0000 (01:14 +0100)]
Remove loop, its a little unfriendly to run it a 10000 times.
Wilfried Goesgens [Thu, 2 Dec 2010 00:11:41 +0000 (01:11 +0100)]
Add test to call mime lookup algorithms
Wilfried Goesgens [Thu, 2 Dec 2010 00:10:41 +0000 (01:10 +0100)]
Ignore more missing .gcov files
Wilfried Goesgens [Wed, 1 Dec 2010 21:25:57 +0000 (22:25 +0100)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Wed, 1 Dec 2010 21:24:13 +0000 (22:24 +0100)]
Resync to launchpad translation add Bulgarian
- remove fuzzy strings, launchpad doesn't have them and patching chokes on them
Wilfried Goesgens [Wed, 1 Dec 2010 19:40:30 +0000 (20:40 +0100)]
Ignore gcov generated files.
Art Cancro [Tue, 30 Nov 2010 09:04:37 +0000 (04:04 -0500)]
Dismissing the popup-is-blocked window now opens it (hopefully)
Art Cancro [Tue, 30 Nov 2010 08:57:00 +0000 (03:57 -0500)]
toggleModal() now explicitly accepts an argument of 1 (on) or 0 (off)
Art Cancro [Tue, 30 Nov 2010 08:40:45 +0000 (03:40 -0500)]
Modal dialog for the popup blocker warning
Art Cancro [Tue, 30 Nov 2010 08:03:05 +0000 (03:03 -0500)]
fix stupidness in closewindow icon
Art Cancro [Tue, 30 Nov 2010 07:57:28 +0000 (02:57 -0500)]
make the cancel button 32x32
Art Cancro [Tue, 30 Nov 2010 06:52:24 +0000 (01:52 -0500)]
Use modal dialog for confirm logoff
Art Cancro [Tue, 30 Nov 2010 06:11:43 +0000 (01:11 -0500)]
Integrated a modal dialog framework (not in use yet)
Wilfried Goesgens [Sun, 28 Nov 2010 20:02:00 +0000 (21:02 +0100)]
Memleak: getaddrinfo needs freeadrinfo here too.
Wilfried Goesgens [Sun, 28 Nov 2010 18:46:18 +0000 (19:46 +0100)]
Mime-parser rework: parse the mime headers of the current container so we can guess the size of the content to jump accross; binary/ascii is used to switch the search algorithm for the next boundary.
- the old mime parser version skipped empty containers; we do this by hand
- for some reason the numbers addressing the mimeparts grow different, maybe mixed use of old/new may cause confusion...
Wilfried Goesgens [Sat, 27 Nov 2010 13:15:51 +0000 (14:15 +0100)]
Exclude testdata from the distribution tgzs; they don't need it and they're huge.
Wilfried Goesgens [Sat, 27 Nov 2010 13:11:18 +0000 (14:11 +0100)]
Anonimize?
Wilfried Goesgens [Sat, 27 Nov 2010 13:10:47 +0000 (14:10 +0100)]
ignore new test binary for git
Wilfried Goesgens [Sat, 27 Nov 2010 13:09:47 +0000 (14:09 +0100)]
Add test mime containers that (used to..) cause troubles in the recent past.
Wilfried Goesgens [Sat, 27 Nov 2010 12:52:45 +0000 (13:52 +0100)]
Add mime-parser-testing tool
to be able to test the mimeparser in an insulated binary, here we have a test, that reads a given file into memory, and parses it using the mime parser.
Wilfried Goesgens [Sat, 27 Nov 2010 12:45:46 +0000 (13:45 +0100)]
More hickups found due to the mimetester; pre push.
- the_mime_parser (): we need to know where parse_MimeHeaders() finds the end of the headers.
- the_mime_parser (): don't move the pointer around just to count up to the end-pointer. this can be done by pointer substraction.
- parse_MimeHeaders (): move the parameter so our caller gets to know what we read
- parse_MimeHeaders (): if (ptr >= content_end) after reading is probably a bug (also there in stable..), that makes us fail to read the last line, if. move it to the end of the pointer.
- don't call strchr twice; remember & evaluate the first result
- stripping the disposition-header can be done right where we found it.
Wilfried Goesgens [Sat, 27 Nov 2010 11:51:16 +0000 (12:51 +0100)]
fix crash: we want to do is_digit() on *char* not on char*
some bug the mimetest found before push.
Wilfried Goesgens [Fri, 26 Nov 2010 13:44:31 +0000 (14:44 +0100)]
Don't leak FD's while serving static files if they're not there
Ok, this case is rather theoretic, but if for some reason files disappear
after webcits start initialising, we might hit this point.
Wilfried Goesgens [Fri, 26 Nov 2010 00:13:32 +0000 (01:13 +0100)]
First Step: chop mimeparser into pieces.
- move the cluster of buffers into a struct compatible to the CKEY macro
- add the interesting other evaluated flags & numbers to that struct
- move finding & parsing of the 'interesting headers' into its own function.
by all this we hope to get informations about the mimepart before we have to search for its end
Wilfried Goesgens [Fri, 26 Nov 2010 00:11:08 +0000 (01:11 +0100)]
* rewrite stripallbut() to return the length
- remove strlen from the for loop abort condition
- move string around _once_
- return the length of the string we operated on, since we know it after the operation anyways.
Art Cancro [Thu, 25 Nov 2010 20:10:00 +0000 (15:10 -0500)]
<HTML> and <HEAD> set to overflow: hidden to get rid of extra scrollbars
Art Cancro [Thu, 25 Nov 2010 15:34:01 +0000 (10:34 -0500)]
remove a FIXME that we fixed
Wilfried Goesgens [Mon, 22 Nov 2010 23:36:48 +0000 (00:36 +0100)]
avoid decoding mime-parts unless we realy need to.
- suff... doesn't need to decode all attachments; we just need the mime headers here.
- when searching for the attachment we want to output, we also don't need the content.
- when outputing an attachment, just decode the attachment were actualy interested in.
Wilfried Goesgens [Mon, 22 Nov 2010 23:30:57 +0000 (00:30 +0100)]
performance improvements: replace memcmp
- looping forward while moving a pointer and doing memcmp isn't fast. replace it by strstr
- \r\n can be done in a pointer dereferencing comparison.
Note: maybe we need to fallback to the memcmp way if there is binary content?
In that case we should do a little smarter and try to use contentlength-headers etc.