Wilfried Göesgens [Fri, 12 Feb 2010 20:45:14 +0000 (20:45 +0000)]
* make the write -1 aware here too.
* don't close -1
Wilfried Göesgens [Fri, 12 Feb 2010 20:05:21 +0000 (20:05 +0000)]
* custom sockets need to work buffered too...
* don't write / select to defunct sockets
Art Cancro [Thu, 11 Feb 2010 23:25:14 +0000 (23:25 +0000)]
* minor tweak to above
Art Cancro [Thu, 11 Feb 2010 23:22:57 +0000 (23:22 +0000)]
* Eliminate HAVE_FLOCK from the build system. Instead, test for the presence of LOCK_EX + LOCK_NB right where we need them.
Wilfried Göesgens [Thu, 11 Feb 2010 18:00:19 +0000 (18:00 +0000)]
* NULL is the abort condition for an invalid header
Wilfried Göesgens [Wed, 10 Feb 2010 23:32:09 +0000 (23:32 +0000)]
* migrate convert_internet_message to StrBuf, the new approach saves tons of strlens, strcpy's and friends
Wilfried Göesgens [Wed, 10 Feb 2010 19:35:32 +0000 (19:35 +0000)]
* we mustn't use $UID
Wilfried Göesgens [Wed, 10 Feb 2010 19:07:22 +0000 (19:07 +0000)]
* use $(MAKE) instead of make, else we will fallback to bsdmake on such systems, which we don't support.
Wilfried Göesgens [Tue, 9 Feb 2010 23:48:27 +0000 (23:48 +0000)]
* change CtdlReadMessageBody to use StrBuf for concattenating the lines
Wilfried Göesgens [Tue, 9 Feb 2010 23:47:22 +0000 (23:47 +0000)]
* if we got more in our commandbuf than the last commandloop run evaluated in the first approach, call it until its empty.
Art Cancro [Tue, 9 Feb 2010 21:08:23 +0000 (21:08 +0000)]
* serv_upgrade.c: don't clear out the LDAP config
Wilfried Göesgens [Tue, 9 Feb 2010 20:39:42 +0000 (20:39 +0000)]
* drop down to nobody when up and running.
Wilfried Göesgens [Tue, 9 Feb 2010 19:20:27 +0000 (19:20 +0000)]
* add ctdlmigrate
Wilfried Göesgens [Mon, 8 Feb 2010 23:00:27 +0000 (23:00 +0000)]
* this can get bigger...
Wilfried Göesgens [Mon, 8 Feb 2010 22:11:29 +0000 (22:11 +0000)]
* start migration to buffered I/O
Wilfried Göesgens [Mon, 8 Feb 2010 22:04:31 +0000 (22:04 +0000)]
* fix warning in openssl function signature
Wilfried Göesgens [Mon, 8 Feb 2010 19:03:26 +0000 (19:03 +0000)]
* add read state for message templates; draft.
Wilfried Göesgens [Mon, 8 Feb 2010 12:08:56 +0000 (12:08 +0000)]
* remove test URL from mail how did this creep into svn?
Wilfried Göesgens [Sun, 7 Feb 2010 12:54:27 +0000 (12:54 +0000)]
* if we delete the last message, msglist[num_msgs - 1] points into an invalid area
* qrbuf.QRhighest is set to 0 if the room is empty; this will most probably fix the problems with empty rooms appearing to have unread messages.
Art Cancro [Sat, 6 Feb 2010 21:31:49 +0000 (21:31 +0000)]
* If we perform a 'read new' operation in a room with no new messages, display the final page and scroll to the bottom.
Art Cancro [Sat, 6 Feb 2010 20:08:35 +0000 (20:08 +0000)]
* Ok, this is it: the 'new new' bbs view is now feature complete. Messages are displayed in a simple paginated format. When the selected operation is 'read new' it goes to the page containing the first new message and then automatically scrolls down to that message.
Art Cancro [Sat, 6 Feb 2010 19:25:56 +0000 (19:25 +0000)]
* If the page number is unspecified and the selected operation is 'read new', start on the page where new messages begin
Wilfried Göesgens [Sat, 6 Feb 2010 18:03:36 +0000 (18:03 +0000)]
* optimize SMTP in, first step:
- don't overuse CC, split function into wrapper so ones with higher frequency users can retrieve it outside.
Wilfried Göesgens [Sat, 6 Feb 2010 12:25:58 +0000 (12:25 +0000)]
* fix off by one in memfmtout
Wilfried Göesgens [Sat, 6 Feb 2010 10:37:35 +0000 (10:37 +0000)]
* move serv_func.c:read_server_binary() to tcp_sockets.c: serv_read_binary()
* serv_read_binary() now knows a way to get the whole thing at once instead of scattering in 4k blocks
* close the server file in all conditions while loading images, else our facility might block in the server
* add -R commandline switch so the user can limit the blobsize if the tcp connection citserver <-> webcit is expected to be less stable
Wilfried Göesgens [Sat, 6 Feb 2010 10:12:48 +0000 (10:12 +0000)]
* remember the total size a downloadable file has
* use mmap to read the download file for output; this way we don't need to copy it into memory first and can let the kernel do this job
* remove the 10k transfer limit
Wilfried Göesgens [Sat, 6 Feb 2010 10:05:09 +0000 (10:05 +0000)]
* comparing the result of a bitflag operation with 0 is always a good idea.
Art Cancro [Fri, 5 Feb 2010 05:38:39 +0000 (05:38 +0000)]
* Greatly simplified the bbsview code by eliminating the concept of using a 'pivot point' where the new messages start. What I'm checking in now is just a simple paginated view where the page numbers start at zero and all contain the same number of messages. Tomorrow I will make 'read new' work correctly by making it jump to an anchor within one of those pages.
Art Cancro [Wed, 3 Feb 2010 18:01:56 +0000 (18:01 +0000)]
* Populate EUID field when fetching RSS items, if possible.
Art Cancro [Wed, 3 Feb 2010 05:26:25 +0000 (05:26 +0000)]
* New new BBS view
Wilfried Göesgens [Mon, 1 Feb 2010 19:22:33 +0000 (19:22 +0000)]
* don't free the buffer in here, its _not_ ours.
* abort if the server has gone away
Wilfried Göesgens [Mon, 1 Feb 2010 19:19:34 +0000 (19:19 +0000)]
* partialy revert r8246; we're working in units of one here, so the number of units read actualy _is_ the number of bytes read here.
Wilfried Göesgens [Sun, 31 Jan 2010 22:10:55 +0000 (22:10 +0000)]
* remove unneeded vcard function...
* put the mime struct through into the vcard functions instead of just parts
* evaluate the (new) charset from part= and DLAT
Wilfried Göesgens [Sun, 31 Jan 2010 22:09:17 +0000 (22:09 +0000)]
* transmit the charset (if found) in part= and DLAT
Art Cancro [Sun, 31 Jan 2010 20:24:41 +0000 (20:24 +0000)]
* define VIEW_BLOG (not yet implemented but I need it as a placeholder)
Dave West [Sun, 31 Jan 2010 17:15:06 +0000 (17:15 +0000)]
Another attempt to close the hole causing crashes when CC==NULL
Wilfried Göesgens [Sun, 31 Jan 2010 15:04:07 +0000 (15:04 +0000)]
* don't re-load vcards, if the server already sent them.
Wilfried Göesgens [Sun, 31 Jan 2010 14:45:51 +0000 (14:45 +0000)]
* we don't even compile this, OFF WITH ITS HEAD!
Dave West [Sat, 30 Jan 2010 16:11:50 +0000 (16:11 +0000)]
Attempt to fix the crash that results from a new sessions context
not existing before the command loop is entered.
This fixes a theoretical non atomic opperation but does not seem
to cause unwanted side effects. Lets see if it cures the problem
on those systems that are seeing it regularly.
Wilfried Göesgens [Fri, 29 Jan 2010 14:17:00 +0000 (14:17 +0000)]
* get the pointer after we sent the greating, its NULL in advance.
Wilfried Göesgens [Thu, 28 Jan 2010 23:38:03 +0000 (23:38 +0000)]
* int/long 64 bit blabla *narf*
Wilfried Göesgens [Wed, 27 Jan 2010 23:35:41 +0000 (23:35 +0000)]
* be more accurate, len needs to be at least sizeof(magic)
Wilfried Göesgens [Wed, 27 Jan 2010 23:23:58 +0000 (23:23 +0000)]
* checking whether cdb->len == 0 was missing as abort precondition
Art Cancro [Tue, 26 Jan 2010 05:14:24 +0000 (05:14 +0000)]
* played with message numbers a bit in preparation for tweaking the bbs view again
Art Cancro [Mon, 25 Jan 2010 15:31:11 +0000 (15:31 +0000)]
* html2ascii now renders *bold* and /italic/ and _underlined_ text as shown here.
Wilfried Göesgens [Sun, 24 Jan 2010 21:59:37 +0000 (21:59 +0000)]
* merge from dav_rework:
* modularize the parser for load_msg_ptrs
* add parser that has the euid
* add work on the URL parsers
* unfinished: new propfind; is #ifdefed
Art Cancro [Sun, 24 Jan 2010 21:49:51 +0000 (21:49 +0000)]
* svn id tag
Art Cancro [Sun, 24 Jan 2010 21:49:14 +0000 (21:49 +0000)]
* svn id tag
Wilfried Göesgens [Sun, 24 Jan 2010 11:11:37 +0000 (11:11 +0000)]
* merge in much of the dav_rework branch: (the drift was becoming to big, no functional changes)
* make configure search for cunit
* rename struct floor to Floor, since floor was already taken by math.h
* move over most of the functions from webserver.c to sysdep.c so main() is isolated and more easy to be replaced by another main in a test-suite-binary
* add first unit test implementations
- test the LANG header parser
- start testing the floor evaluation
Wilfried Göesgens [Fri, 22 Jan 2010 21:55:22 +0000 (21:55 +0000)]
* add literal support to imap login / passwords; this should fix our communication with nginx as proxy.
Wilfried Göesgens [Fri, 22 Jan 2010 19:21:15 +0000 (19:21 +0000)]
* port our setuid function from citserver to webcit; -u can now specify the UID to run as
Art Cancro [Wed, 20 Jan 2010 15:50:18 +0000 (15:50 +0000)]
Session SMTP data is null. WTF? We will crash now.
Art Cancro [Tue, 19 Jan 2010 04:42:13 +0000 (04:42 +0000)]
* Replaced older/newer messages buttons with previous/next 20/50/100 buttons
Art Cancro [Tue, 19 Jan 2010 04:40:42 +0000 (04:40 +0000)]
* Replaced older/newer messages buttons with previous/next 20/50/100 buttons
Art Cancro [Sun, 17 Jan 2010 23:12:55 +0000 (23:12 +0000)]
* Fixed another fread() bug
Wilfried Göesgens [Sun, 17 Jan 2010 23:01:50 +0000 (23:01 +0000)]
* add function to check whether a token parameter would give us a string
* add preeval-grammer check for the tabbed api
Wilfried Göesgens [Sun, 17 Jan 2010 21:38:48 +0000 (21:38 +0000)]
* fix all those tiny bugs pointed out by our new subtemplate checking
Wilfried Göesgens [Sun, 17 Jan 2010 21:18:13 +0000 (21:18 +0000)]
* check whether a template exists
* ITERATE now recommends the token parameter to actualy be marked as such.
Art Cancro [Sat, 16 Jan 2010 22:49:46 +0000 (22:49 +0000)]
* Fixed some more of the things that broke in r8201.
NOTE: fread() returns the number of BLOCKS read, not the number of BYTES read.
Wilfried Göesgens [Sat, 16 Jan 2010 16:54:08 +0000 (16:54 +0000)]
* add macro to register defines with just a define as param
* flip the Current room QR-Flag conditionals to _one_ conditional working with a parameter
* make the templates follow that change.
Wilfried Göesgens [Sat, 16 Jan 2010 15:26:33 +0000 (15:26 +0000)]
* if the config room has another view than VIEW_BBS, set it. Else it might stop us from saving our Config.
Wilfried Göesgens [Sat, 16 Jan 2010 14:11:05 +0000 (14:11 +0000)]
* memset(0) the folders, else we might struggle...
Art Cancro [Sat, 16 Jan 2010 05:11:09 +0000 (05:11 +0000)]
* When a 'read new' operation returns zero messages, make the 'older messages' link available to start reading old messages from the end instead of the beginning of the room.
Art Cancro [Sat, 16 Jan 2010 05:00:19 +0000 (05:00 +0000)]
* the JavaScript code for the new BBS view has been moved out of bbs_renderer.c and into static/wclib.js where it belongs.
Art Cancro [Fri, 15 Jan 2010 02:58:13 +0000 (02:58 +0000)]
* fixed some log messages that still had color in them. That doesn't belong in the tree. Sorry...
Art Cancro [Fri, 15 Jan 2010 02:52:33 +0000 (02:52 +0000)]
* When an outgoing message being delivered via SMTP does not properly terminate, don't just log a warning, but also output an extra CRLF so that the dot terminator on the next line is handled by the receiver.
Wilfried Göesgens [Thu, 14 Jan 2010 23:02:29 +0000 (23:02 +0000)]
* uninitialized...
Wilfried Göesgens [Thu, 14 Jan 2010 22:55:31 +0000 (22:55 +0000)]
* unititialized var...
Wilfried Göesgens [Thu, 14 Jan 2010 21:46:39 +0000 (21:46 +0000)]
* create function to parse the output of goto into our folder structure
* migrate wcsessions goto fragments to a static folder instance 'CurRoom'
* make all places follow that change
* use the room structure in goto_config_room
Wilfried Göesgens [Thu, 14 Jan 2010 21:41:32 +0000 (21:41 +0000)]
* ignore .swp and .orig files so some more void files won't make it into our template repository.
Wilfried Göesgens [Thu, 14 Jan 2010 20:37:44 +0000 (20:37 +0000)]
* flip sequence, C99 Baby!
Art Cancro [Wed, 13 Jan 2010 21:38:05 +0000 (21:38 +0000)]
* Removed some cruft leftover from the old bbs view
Art Cancro [Wed, 13 Jan 2010 20:35:30 +0000 (20:35 +0000)]
* Removed some cruft leftover from the old bbs view
Art Cancro [Wed, 13 Jan 2010 04:50:31 +0000 (04:50 +0000)]
* Removed the extra log message now that the bug is fixed
Art Cancro [Wed, 13 Jan 2010 00:08:13 +0000 (00:08 +0000)]
* fixed a bug in network_process_file() that was causing every message to be loaded into a buffer with a length of 1 byte.
Art Cancro [Wed, 13 Jan 2010 00:04:15 +0000 (00:04 +0000)]
* Added some more diagnostics to serv_network.c -- troubleshooting a problem
Wilfried Göesgens [Tue, 12 Jan 2010 21:02:26 +0000 (21:02 +0000)]
* fix memleak
* fix template reference
Wilfried Göesgens [Tue, 12 Jan 2010 19:17:09 +0000 (19:17 +0000)]
* upsi, some links to templates which didn't follow the moving action
Wilfried Göesgens [Sun, 10 Jan 2010 22:16:34 +0000 (22:16 +0000)]
* remove xtoi, its not used anymore.
Wilfried Göesgens [Sun, 10 Jan 2010 21:54:10 +0000 (21:54 +0000)]
* fix server cookie feature
Wilfried Göesgens [Sun, 10 Jan 2010 21:17:44 +0000 (21:17 +0000)]
* use the HexEscAppend thing instead of printf appending...
* move some cookie logic over
Wilfried Göesgens [Sun, 10 Jan 2010 21:14:15 +0000 (21:14 +0000)]
* hm, something is going wrong here. allocing bigger spaces here for filenames fixes it, fancily even valgrind doesn't show whats going wrong...
Wilfried Göesgens [Sun, 10 Jan 2010 21:12:04 +0000 (21:12 +0000)]
* add function to append strings encoding them in hex digits; this is basicaly a stripped down copy of the url escaper.
Wilfried Göesgens [Sun, 10 Jan 2010 21:09:07 +0000 (21:09 +0000)]
* fix memleak: free our message area if alloced
Dave West [Sun, 10 Jan 2010 12:41:01 +0000 (12:41 +0000)]
Fix race condition that caused segfaults in imap and xmpp as seen on
uncensored.
The race was that a new connection could begin doing its greeting
function and another thread could begin the connections command loop
function before the greeting had completed setting up the connection
environment.
Art Cancro [Thu, 7 Jan 2010 15:52:39 +0000 (15:52 +0000)]
* Made the 'older messages' and 'newer messages' link text just a bit smaller. It was looking obnoxious at the previous size.
* Also configured those links to turn to a red background when the mouse hovers over them
Art Cancro [Wed, 6 Jan 2010 21:50:59 +0000 (21:50 +0000)]
* Modified configure.ac to look for gc/gc_local_alloc.h instead of gc/gc.h, since the former is what the source code is actually calling for. THIS HEADER DOES NOT APPEAR IN RED HAT OR CENTOS BUILDS OF LIBGC. Why is this in here at all?
Wilfried Göesgens [Wed, 6 Jan 2010 21:39:13 +0000 (21:39 +0000)]
* make static/ install recurseable
Art Cancro [Wed, 6 Jan 2010 20:24:26 +0000 (20:24 +0000)]
* Cleaned up the HTML and CSS for the new bbs view.
Wilfried Göesgens [Tue, 5 Jan 2010 23:29:18 +0000 (23:29 +0000)]
* read reply....
Wilfried Göesgens [Tue, 5 Jan 2010 23:07:05 +0000 (23:07 +0000)]
as
modules/wiki/serv_wiki.c: In function 'wiki_rev_callback':
modules/wiki/serv_wiki.c:447: warning: cast from pointer to integer of different size
modules/wiki/serv_wiki.c:447: warning: cast from pointer to integer of different size
points out, this wasn't 64 bit clean.
Wilfried Göesgens [Tue, 5 Jan 2010 23:01:35 +0000 (23:01 +0000)]
* want if mkdir, chmod, chown fail...
Wilfried Göesgens [Tue, 5 Jan 2010 22:58:11 +0000 (22:58 +0000)]
* memset config before reading it
* warn if the file didn't have the size we expected
Wilfried Göesgens [Tue, 5 Jan 2010 22:21:48 +0000 (22:21 +0000)]
* only warn if they didn't already exist
Wilfried Göesgens [Tue, 5 Jan 2010 22:01:37 +0000 (22:01 +0000)]
* use the results of fread instead of trusting that it worked out
* check (and log if not) we were able to mkdir & chown our spool directories
Wilfried Göesgens [Tue, 5 Jan 2010 21:59:47 +0000 (21:59 +0000)]
* make it const where possible...
* cast into openssl, they want unsigned char * (why?)
Wilfried Göesgens [Sun, 3 Jan 2010 23:49:17 +0000 (23:49 +0000)]
* some more work on unit testing
Wilfried Göesgens [Sun, 3 Jan 2010 23:48:21 +0000 (23:48 +0000)]
* allow mime header sub tokens to have blanks left and right of the =
Wilfried Göesgens [Sun, 3 Jan 2010 23:44:40 +0000 (23:44 +0000)]
* some more input condition sanitizing
Wilfried Göesgens [Sat, 2 Jan 2010 23:24:54 +0000 (23:24 +0000)]
* rewrite memfmout() so it doesn't split overlong lines; It now will try to output everything till the last blank, and reattempt with the next line; if that doesn't work the overlong string is outputt'ed