citadel
9 years agooops, this also checks room access rights.
Wilfried Goesgens [Sun, 1 Sep 2013 16:27:04 +0000 (18:27 +0200)]
oops, this also checks room access rights.

9 years agoMove user privileges functions to user_ops.c, room access check functions to room_ops.c
Wilfried Goesgens [Sun, 1 Sep 2013 16:12:25 +0000 (18:12 +0200)]
Move user privileges functions to user_ops.c, room access check functions to room_ops.c

9 years agoMove simple subtstitution functions to the message functions
Wilfried Goesgens [Sun, 1 Sep 2013 13:11:29 +0000 (15:11 +0200)]
Move simple subtstitution functions to the message functions

9 years agorefactor naming of core message manipulation funcions
Wilfried Goesgens [Sun, 1 Sep 2013 12:58:06 +0000 (14:58 +0200)]
refactor naming of core message manipulation funcions

9 years agoMove Message struct manipulation functions into one place
Wilfried Goesgens [Sun, 1 Sep 2013 12:46:56 +0000 (14:46 +0200)]
Move Message struct manipulation functions into one place

9 years agoReplace all discrete checks for empty message fields by CM_IsEmpty()
Wilfried Goesgens [Sun, 1 Sep 2013 12:33:21 +0000 (14:33 +0200)]
Replace all discrete checks for empty message fields by CM_IsEmpty()

9 years agoRoute all access to cm_fields[] through api functions
Wilfried Goesgens [Sun, 1 Sep 2013 10:30:27 +0000 (12:30 +0200)]
Route all access to cm_fields[] through api functions

9 years agomake it const, baby!
Wilfried Goesgens [Sat, 31 Aug 2013 13:18:30 +0000 (15:18 +0200)]
make it const, baby!

9 years agouse an Enum for the cm_fields vector instead of nameless chars
Wilfried Goesgens [Sun, 18 Aug 2013 08:29:11 +0000 (10:29 +0200)]
use an Enum for the cm_fields vector instead of nameless chars

9 years agoRSS: if debug, remove variables too.
Wilfried Goesgens [Sat, 3 Aug 2013 16:49:15 +0000 (18:49 +0200)]
RSS: if debug, remove variables too.

9 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Sat, 3 Aug 2013 14:20:51 +0000 (16:20 +0200)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

9 years agoMESSAGES: store 1 & 2 field to db - it has to be permanent.
Wilfried Goesgens [Sat, 3 Aug 2013 14:20:21 +0000 (16:20 +0200)]
MESSAGES: store 1 & 2 field to db - it has to be permanent.

9 years agoInstant expunge is now the only mode of operation. The expunge semantics have been...
Art Cancro [Sat, 3 Aug 2013 00:10:43 +0000 (20:10 -0400)]
Instant expunge is now the only mode of operation.  The expunge semantics have been stupid from the beginning and Mark Crispin should die in a car fire for forcing the entire world to deal with workarounds for his crappy data store.

9 years agoDisable ical rendering for now.
Wilfried Goesgens [Fri, 19 Jul 2013 12:38:00 +0000 (14:38 +0200)]
Disable ical rendering for now.

9 years agoUpdated all version numbers to 8.20 in preparation for release
Art Cancro [Tue, 16 Jul 2013 17:50:38 +0000 (13:50 -0400)]
Updated all version numbers to 8.20 in preparation for release

9 years agoStrBufStripAllBut() now returns the LEFTMOST qualifying substring. This allows mail...
Art Cancro [Thu, 11 Jul 2013 01:07:43 +0000 (21:07 -0400)]
StrBufStripAllBut() now returns the LEFTMOST qualifying substring. This allows mail to be received from brain-damaged Microsoft MTAs that place additional superfluous angle-bracketed strings on the MAIL FROM line.  Bill Gates is Hitler.

9 years agoAdditional logging to troubleshoot false positives on spoof check
Art Cancro [Mon, 8 Jul 2013 18:48:41 +0000 (14:48 -0400)]
Additional logging to troubleshoot false positives on spoof check

9 years agoVCARD: if we loaded the vcard mime from the server don't load it again.
Wilfried Goesgens [Sat, 6 Jul 2013 14:03:39 +0000 (16:03 +0200)]
VCARD: if we loaded the vcard mime from the server don't load it again.

Thanks to Stefan for reporting this (again)

9 years agoSendcommand: add missing break - so we don't fail to -w.
Wilfried Goesgens [Sat, 29 Jun 2013 22:21:53 +0000 (00:21 +0200)]
Sendcommand: add missing break - so we don't fail to -w.

Thanks to Harry Coin for pointing this out.

9 years agoGETTEXT: when re-using a session, make shure we re-detect the locales.
Wilfried Goesgens [Tue, 25 Jun 2013 21:13:40 +0000 (23:13 +0200)]
GETTEXT: when re-using a session, make shure we re-detect the locales.

9 years agoGETTEXT: Browser detection; if we don't know any of the users languages, rather defau...
Wilfried Goesgens [Tue, 25 Jun 2013 20:28:22 +0000 (22:28 +0200)]
GETTEXT: Browser detection; if we don't know any of the users languages, rather default to en_US then choosing the lexicographical closest match - the user may not understand this locale at all.

9 years agoGETTEXT: represent C as en_US to the user - no one speaks C that fluently after all ;-)
Wilfried Goesgens [Tue, 25 Jun 2013 18:47:08 +0000 (20:47 +0200)]
GETTEXT: represent C as en_US to the user - no one speaks C that fluently after all ;-)

9 years agoSUBST: bad bug in plain text substitution: need to specify -1 if strlen not provided.
Wilfried Goesgens [Tue, 25 Jun 2013 18:46:23 +0000 (20:46 +0200)]
SUBST: bad bug in plain text substitution: need to specify -1 if strlen not provided.

9 years agoSUBST: fix warnings.
Wilfried Goesgens [Sun, 23 Jun 2013 14:43:33 +0000 (16:43 +0200)]
SUBST: fix warnings.

9 years agoGETTEXT: optionaly allow to escape translated tokens.
Wilfried Goesgens [Sun, 23 Jun 2013 14:41:24 +0000 (16:41 +0200)]
GETTEXT: optionaly allow to escape translated tokens.

9 years agoDEB: also warn uninitialized access when doing debug compile
Wilfried Goesgens [Sun, 23 Jun 2013 14:35:34 +0000 (16:35 +0200)]
DEB: also warn uninitialized access when doing debug compile

9 years agocURL: put error description into the status message.
Wilfried Goesgens [Sat, 15 Jun 2013 13:00:14 +0000 (15:00 +0200)]
cURL: put error description into the status message.

9 years agoCURL: it seems as in case of timeout cURL closes the FD somewhere before - forget...
Wilfried Goesgens [Wed, 12 Jun 2013 22:27:56 +0000 (00:27 +0200)]
CURL: it seems as in case of timeout cURL closes the FD somewhere before - forget it so we don't close it again.

9 years agoMailinglists: possible room aliases have to be prepared to not contain blanks and...
Wilfried Goesgens [Wed, 12 Jun 2013 20:11:53 +0000 (22:11 +0200)]
Mailinglists: possible room aliases have to be prepared to not contain blanks and non-ascii-chars.

9 years agoML: don't free the roomname yet - we still need it.
Wilfried Goesgens [Wed, 12 Jun 2013 19:51:38 +0000 (21:51 +0200)]
ML: don't free the roomname yet - we still need it.

9 years agoMailinglist: properly sanitize the roomname if we have to use it as sender.
Wilfried Goesgens [Wed, 12 Jun 2013 19:14:41 +0000 (21:14 +0200)]
Mailinglist: properly sanitize the roomname if we have to use it as sender.

9 years agoSMTP: fix aggregation of fail stati for aide / bounce message.
Wilfried Goesgens [Mon, 10 Jun 2013 18:02:40 +0000 (20:02 +0200)]
SMTP: fix aggregation of fail stati for aide / bounce message.

9 years agoNETCFG: make shure files exist with proper permissions.
Wilfried Goesgens [Mon, 10 Jun 2013 17:43:39 +0000 (19:43 +0200)]
NETCFG: make shure files exist with proper permissions.

9 years agoRNCFG: protect deletion of configs
Wilfried Goesgens [Sat, 8 Jun 2013 15:10:06 +0000 (17:10 +0200)]
RNCFG: protect deletion of configs

9 years agoCitadel Networking: add configured remote room name, so its later on put into the...
Wilfried Goesgens [Sat, 8 Jun 2013 15:06:11 +0000 (17:06 +0200)]
Citadel Networking: add configured remote room name, so its later on put into the spool message.

9 years agoNETIN: one return is enough.
Wilfried Goesgens [Sat, 8 Jun 2013 15:05:01 +0000 (17:05 +0200)]
NETIN: one return is enough.

9 years agoNETIN: save strlens when deserializing network message buffers.
Wilfried Goesgens [Sat, 8 Jun 2013 15:03:50 +0000 (17:03 +0200)]
NETIN: save strlens when deserializing network message buffers.

9 years agoMessage Deletion: only use one memmove to remove leading empty message numbers
Wilfried Goesgens [Sat, 8 Jun 2013 15:02:49 +0000 (17:02 +0200)]
Message Deletion: only use one memmove to remove leading empty message numbers

9 years agoLOG: add separating blanks in debug messages.
Wilfried Goesgens [Sat, 8 Jun 2013 15:01:10 +0000 (17:01 +0200)]
LOG: add separating blanks in debug messages.

9 years agoEVCURL: debug log stopping
Wilfried Goesgens [Sat, 8 Jun 2013 14:59:48 +0000 (16:59 +0200)]
EVCURL: debug log stopping

9 years agoRSSClient: don't save empty messages.
Wilfried Goesgens [Thu, 6 Jun 2013 21:22:47 +0000 (23:22 +0200)]
RSSClient: don't save empty messages.

9 years agofix buffer overrun by 1
Wilfried Goesgens [Thu, 6 Jun 2013 19:02:28 +0000 (21:02 +0200)]
fix buffer overrun by 1

9 years agoAdd handler for recovery of bad file descriptors
Wilfried Goesgens [Wed, 5 Jun 2013 23:06:30 +0000 (01:06 +0200)]
Add handler for recovery of bad file descriptors

9 years agoUT: fix comparison for expired timestamps.
Wilfried Goesgens [Wed, 5 Jun 2013 07:46:20 +0000 (09:46 +0200)]
UT: fix comparison for expired timestamps.

9 years agoRSSClient: do not double delete the curl context; don't swap IOID and CCID for logging
Wilfried Goesgens [Tue, 4 Jun 2013 20:10:43 +0000 (22:10 +0200)]
RSSClient: do not double delete the curl context; don't swap IOID and CCID for logging

9 years agoTDAP: increase usetable flush time to 10 days
Wilfried Goesgens [Sun, 2 Jun 2013 12:12:52 +0000 (14:12 +0200)]
TDAP: increase usetable flush time to 10 days

9 years agoCURL: the cleanup has to be done before.
Wilfried Goesgens [Sun, 2 Jun 2013 12:10:43 +0000 (14:10 +0200)]
CURL: the cleanup has to be done before.

9 years agoRSSClient: refresh per message UT-Entries after one day
Wilfried Goesgens [Mon, 27 May 2013 22:47:15 +0000 (00:47 +0200)]
RSSClient: refresh per message UT-Entries after one day

9 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Sun, 26 May 2013 13:47:04 +0000 (15:47 +0200)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

9 years agoEV: stop all watchers before going into other queues - so we can avoid race conditions.
Wilfried Goesgens [Sun, 26 May 2013 13:46:09 +0000 (15:46 +0200)]
EV: stop all watchers before going into other queues - so we can avoid race conditions.

9 years agominor doc change
Art Cancro [Mon, 20 May 2013 21:45:30 +0000 (17:45 -0400)]
minor doc change

9 years agoWebcit dupe-zapper
Wilfried Goesgens [Thu, 16 May 2013 22:14:19 +0000 (00:14 +0200)]
Webcit dupe-zapper

A simple duplicate message finder - criterias are the subject, sender, sent date. If they're the same, its a duplicate. Messages are then moved to the trashcan of the current user.

9 years agoRSSClient: properly abort loop for setting state in RSS feeds configured in multiple...
Wilfried Goesgens [Thu, 16 May 2013 20:18:04 +0000 (22:18 +0200)]
RSSClient: properly abort loop for setting state in RSS feeds configured in multiple rooms

9 years agoPOP3Client: expose state to rwho
Wilfried Goesgens [Thu, 16 May 2013 20:13:47 +0000 (22:13 +0200)]
POP3Client: expose state to rwho

9 years agoRSSClient: fix cast
Wilfried Goesgens [Thu, 16 May 2013 18:23:19 +0000 (20:23 +0200)]
RSSClient: fix cast

9 years agoNETCFG: first free the configs, then the infrastructure needed to free them.
Wilfried Goesgens [Thu, 16 May 2013 18:22:42 +0000 (20:22 +0200)]
NETCFG: first free the configs, then the infrastructure needed to free them.

9 years agoTDAP: align rss config structs with the primary type.
Wilfried Goesgens [Tue, 14 May 2013 23:29:48 +0000 (01:29 +0200)]
TDAP: align rss config structs with the primary type.

9 years agoTDAP: add facility to protect usetable entries from being deleted while still needed.
Wilfried Goesgens [Tue, 14 May 2013 22:31:15 +0000 (00:31 +0200)]
TDAP: add facility to protect usetable entries from being deleted while still needed.

9 years agoEV: fix possible nullpointer access in last commit.
Wilfried Goesgens [Sun, 12 May 2013 20:44:11 +0000 (22:44 +0200)]
EV: fix possible nullpointer access in last commit.

9 years agoEV: expose current event queue state to the RWHO command
Wilfried Goesgens [Sun, 12 May 2013 16:36:33 +0000 (18:36 +0200)]
EV: expose current event queue state to the RWHO command

9 years agoRSS: expose current state of action to RWHO command
Wilfried Goesgens [Sun, 12 May 2013 09:50:52 +0000 (11:50 +0200)]
RSS: expose current state of action to RWHO command

9 years agofix formating; use define for size_t arguments.
Wilfried Goesgens [Sun, 21 Apr 2013 08:11:48 +0000 (10:11 +0200)]
fix formating; use define for size_t arguments.

9 years agoUnix domain sockets don't work well in non-blocking.
Wilfried Goesgens [Sun, 21 Apr 2013 07:30:43 +0000 (09:30 +0200)]
Unix domain sockets don't work well in non-blocking.

9 years agoTHREADS: config setting min_workers _now_ also is that, plus its also max_spare_workers
Wilfried Goesgens [Sat, 20 Apr 2013 11:16:37 +0000 (13:16 +0200)]
THREADS: config setting min_workers _now_ also is that, plus its also max_spare_workers

9 years agoTHREADS: re-install the max workers & min spare workers configs; lock thread count...
Wilfried Goesgens [Sat, 20 Apr 2013 10:48:45 +0000 (12:48 +0200)]
THREADS: re-install the max workers & min spare workers configs; lock thread count operations.

9 years agofix compilation.
Wilfried Goesgens [Tue, 16 Apr 2013 21:04:12 +0000 (23:04 +0200)]
fix compilation.

9 years agofix closing of already closed files
Wilfried Goesgens [Tue, 16 Apr 2013 21:03:33 +0000 (23:03 +0200)]
fix closing of already closed files

9 years agoSockets: make clear we don't close a socket again.
Wilfried Goesgens [Tue, 16 Apr 2013 19:42:24 +0000 (21:42 +0200)]
Sockets: make clear we don't close a socket again.

9 years agoEVENT: we memset the context, remember & re-set the ID so we can find the earlier...
Wilfried Goesgens [Tue, 16 Apr 2013 19:27:10 +0000 (21:27 +0200)]
EVENT: we memset the context, remember & re-set the ID so we can find the earlier destroy better.

9 years agoRSS: some more debug logging.
Wilfried Goesgens [Tue, 16 Apr 2013 19:26:53 +0000 (21:26 +0200)]
RSS: some more debug logging.

9 years agoSMPQ: we collect stati of all failed attempts; put them into the bounce messages.
Wilfried Goesgens [Sat, 13 Apr 2013 10:45:21 +0000 (12:45 +0200)]
SMPQ: we collect stati of all failed attempts; put them into the bounce messages.

9 years agoNETCFG: increment loop counter.
Wilfried Goesgens [Sat, 13 Apr 2013 09:17:47 +0000 (11:17 +0200)]
NETCFG: increment loop counter.

9 years agoLogin: fix typo in token
Wilfried Goesgens [Fri, 12 Apr 2013 06:16:56 +0000 (08:16 +0200)]
Login: fix typo in token

9 years agoWildfire: fix memory leak.
Wilfried Goesgens [Sun, 31 Mar 2013 19:54:38 +0000 (21:54 +0200)]
Wildfire: fix memory leak.

9 years agoNETCFG: fix condition to check whether a filedescriptor is there or not.
Wilfried Goesgens [Sun, 31 Mar 2013 19:31:07 +0000 (21:31 +0200)]
NETCFG: fix condition to check whether a filedescriptor is there or not.

9 years agoNETCFG: oops, we need to add CCID to the CtdlAideFPMessage() here too.
Wilfried Goesgens [Sun, 31 Mar 2013 12:47:08 +0000 (14:47 +0200)]
NETCFG: oops, we need to add CCID to the CtdlAideFPMessage() here too.

9 years agoRework Login dialog to work with rekonq (and hopefully Safari)
Wilfried Goesgens [Sun, 31 Mar 2013 11:52:02 +0000 (13:52 +0200)]
Rework Login dialog to work with rekonq (and hopefully Safari)

  - modal.js: don't use a function pointer - simply name the function as the pointer.
  - head.html: if we're not logged in, we add the login dialog to the page; its hidden anyways.
  - login.html: since we get printed into existing pages, we don't need <html><body> - its wrong in first place to have them.
  - authmethods.js: GetLoggedInFirst(): we don't need to send an ajax request to retrieve the login mask; if its needed, head.html already contains it. Simply uncover it to the user.

9 years agoSEEN-Database: refactor database interface for remembering whether we already aggrega...
Wilfried Goesgens [Fri, 29 Mar 2013 10:53:03 +0000 (11:53 +0100)]
SEEN-Database: refactor database interface for remembering whether we already aggregated messages

  - concentrate all application interactions in database.c in CheckIfAlreadySeen
  - add debug log facility for seen access
  - reduce write access to the table by only refreshing records every 4 days (we need to do this, else they will expire after 7 days)

9 years agoInfrastructure: if we don't find the ical headers during boostrap, abort.
Wilfried Goesgens [Tue, 26 Mar 2013 19:13:26 +0000 (20:13 +0100)]
Infrastructure: if we don't find the ical headers during boostrap, abort.

9 years agoRSSC: remove old malloc not needed anymore.
Wilfried Goesgens [Mon, 25 Mar 2013 14:28:40 +0000 (15:28 +0100)]
RSSC: remove old malloc not needed anymore.

9 years agoNSYN: fix the NSYN command
Wilfried Goesgens [Mon, 25 Mar 2013 13:58:48 +0000 (14:58 +0100)]
NSYN: fix the NSYN command

  - construct the recipients the way the networking functions expect them
  - add debug log when combining the spoolfile to log the current outbound file size
  - check whether we are able to load the message from disk before calling the recipient handlers.

9 years agoNTT: add a debug facility to dump all currently locked peers
Wilfried Goesgens [Mon, 25 Mar 2013 13:56:49 +0000 (14:56 +0100)]
NTT: add a debug facility to dump all currently locked peers

9 years agoMSG: log if we don't find a requested message in the db
Wilfried Goesgens [Mon, 25 Mar 2013 13:54:44 +0000 (14:54 +0100)]
MSG: log if we don't find a requested message in the db

9 years agoWorkaround pop3 servers sending empty lines in message lists
Wilfried Goesgens [Fri, 22 Mar 2013 17:35:20 +0000 (18:35 +0100)]
Workaround pop3 servers sending empty lines in message lists

9 years agoRSSClient: fix loading of RSS Configs; Usetable handling
Wilfried Goesgens [Thu, 21 Mar 2013 00:25:08 +0000 (01:25 +0100)]
RSSClient: fix loading of RSS Configs; Usetable handling

  - Configs: forgot to iterate over the list
  - Configs: extract the bare URL
  - UseTable: now and then we need to parse the document, so we refresh the seen-table timestamps; else these entries will be removed by the TDAB.

9 years agothere is no ar_AR, we choose ar_AE.
Wilfried Goesgens [Tue, 19 Mar 2013 12:40:47 +0000 (13:40 +0100)]
there is no ar_AR, we choose ar_AE.

9 years agoGETTEXT: rather choose the language on the array of locales successfully loaded than...
Wilfried Goesgens [Mon, 18 Mar 2013 22:30:37 +0000 (23:30 +0100)]
GETTEXT: rather choose the language on the array of locales successfully loaded than those we originaly shipped.

9 years agooops, we chose to do this in alphabetic order.
Wilfried Goesgens [Wed, 6 Mar 2013 06:21:43 +0000 (07:21 +0100)]
oops, we chose to do this in alphabetic order.

9 years agoTranslation: add arabic
Wilfried Goesgens [Wed, 6 Mar 2013 06:17:30 +0000 (07:17 +0100)]
Translation: add arabic

9 years agoTinyMCE: enable browser based spellchecking. Tnx ax25 to dig out this option.
Wilfried Goesgens [Mon, 11 Mar 2013 19:07:52 +0000 (20:07 +0100)]
TinyMCE: enable browser based spellchecking. Tnx ax25 to dig out this option.

9 years agooops, we chose to do this in alphabetic order.
Wilfried Goesgens [Wed, 6 Mar 2013 06:21:43 +0000 (07:21 +0100)]
oops, we chose to do this in alphabetic order.

9 years agoTranslation: add arabic
Wilfried Goesgens [Wed, 6 Mar 2013 06:17:30 +0000 (07:17 +0100)]
Translation: add arabic

9 years agoEVENT_CLIENT: when handing over to the DB-Queue, don't re-start IO-Watchers.
Wilfried Goesgens [Sat, 2 Mar 2013 14:35:30 +0000 (15:35 +0100)]
EVENT_CLIENT: when handing over to the DB-Queue, don't re-start IO-Watchers.

9 years agoSMTPSrv: don't use memset() to forget - we have structured data in there now.
Wilfried Goesgens [Fri, 1 Mar 2013 19:19:41 +0000 (20:19 +0100)]
SMTPSrv: don't use memset() to forget - we have structured data in there now.

9 years agoFile-Handling: sanitize filenames.
Wilfried Goesgens [Mon, 25 Feb 2013 19:48:08 +0000 (20:48 +0100)]
File-Handling: sanitize filenames.

9 years agomime_download(): missed CC -> CCC in one place.
Wilfried Goesgens [Mon, 25 Feb 2013 19:32:52 +0000 (20:32 +0100)]
mime_download(): missed CC -> CCC in one place.

9 years agoSMTP-Client: Implement AUTH LOGIN
Wilfried Goesgens [Mon, 25 Feb 2013 18:59:47 +0000 (19:59 +0100)]
SMTP-Client: Implement AUTH LOGIN

9 years agoMerge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel
Wilfried Goesgens [Sun, 24 Feb 2013 11:44:45 +0000 (12:44 +0100)]
Merge branch 'master' of ssh://git.citadel.org/appl/gitroot/citadel

9 years agoLists: don't overwrite from: header. this only needs to be done for participates.
Wilfried Goesgens [Sun, 24 Feb 2013 11:38:12 +0000 (12:38 +0100)]
Lists: don't overwrite from: header. this only needs to be done for participates.

9 years agoCompleted a pair of functions to fetch the user preferences at the beginning of an...
Art Cancro [Fri, 22 Feb 2013 20:11:21 +0000 (15:11 -0500)]
Completed a pair of functions to fetch the user preferences at the beginning of an authenticated SMTP session.  (Actually doing something with this data will follow in an upcoming commit.)