[Citadel Development] Re: [SCM] citadel.org branch, master, updated. 7bfc9ea85ba1146f09982b9616eaf82b54321ea4
On 12/07/11 14:51, IGnatius T Foobar wrote: No, we just pull the top-level headers and we do not fetch the message body. Do we still do the security check to make sure the message is in the room, so we can't used this to peek at arbitrary messages? Sam
[Citadel Development] Re:
On 11/07/11 14:04, IGnatius T Foobar wrote: Actually, I'm in the process of ripping out the *new* way too. The buttons for Reply, ReplyQuoted, and Forward need to carry a whole lot of information (subject, references, recipients) out to the browser and then back in through a URL submission, and because those buttons are passed through the GetLoggedInFirst() framework, their URL's need to be double-escaped. As a result, there are a number of special characters which can break the whole thing if they appear anywhere. Instead of trying to tweak this fragile and ugly situation, I am rewriting it to have the browser simply tell WebCit the number of the message being replied to (or forwarded), and WebCit can fetch all of that information on its own. We already do this for the quoted/forwarded message text, so it should be fairly straightforward to get all the other info too. (I said "straightforward" rather than "easy" because the tricky part will be to do it without fetching the message three or four times.) Not forgetting the continuation of a message from the drafts folder
[Citadel Development] Re: SMTP timeout
And the thing is, while I think the ISP delaying schools email for 120 seconds to try and get an ident connection on 113 is nuts, I was too embarrassed to mention that I was timing out after only 30 seconds - so I merely said that I had increased the timeout to nearly 5 minutes. 30 seconds is a fine time to *want* to wait; but a measure of sufficiency is it being long enough to be able to confidently blame the other party - and it failed on that score. If I said "but you shouldn't wait 120 seconds for ident which can't be trusted anyway" the would say "and you should wait longer than 30 seconds". And the thing is although I would be right, so would they. Sam On 29/06/11 07:41, samjam wrote: My children's school's SMTP server waits 120 seconds before responding with a "250 Recipient OK" during SMTP. The server is reports itself as "Mirapoint Messaging Server MOS 4.2.2-FCS Queuing" Funnily if the connection is aborted after 60 seconds, the "250" response comes back immediately. Talks with the techie suggest they are waiting for a response from my ident server; however although I don't run an ident service the port is not firewalled so they should get a connection refused pretty quickly. I'm wondering if their firewall blocks their own ident connection. I mention this because: commit 45ba51763ead4a25ad46fb8b2c82d398fdbb051a Author: Wilfried Goesgens Date: Sun Nov 21 16:34:16 2010 +0100 Relax SMTP Client timeout settings as discussed. - default is 30 seconds - Server greeting 90 seconds (DNS lookups for RBLs might be slow And this is a real-world case where perhaps we need to be more forgiving than 30 seconds because of someone elses badly configured mail server. I increased the timeout from 30 seconds to 230 seconds and - to my relief, mail started to be delivered. I think this timeout should be configurable Sam
[Citadel Development] SMTP timeout
My children's school's SMTP server waits 120 seconds before responding with a "250 Recipient OK" during SMTP. The server is reports itself as "Mirapoint Messaging Server MOS 4.2.2-FCS Queuing" Funnily if the connection is aborted after 60 seconds, the "250" response comes back immediately. Talks with the techie suggest they are waiting for a response from my ident server; however although I don't run an ident service the port is not firewalled so they should get a connection refused pretty quickly. I'm wondering if their firewall blocks their own ident connection. I mention this because: commit 45ba51763ead4a25ad46fb8b2c82d398fdbb051a Author: Wilfried Goesgens Date: Sun Nov 21 16:34:16 2010 +0100 Relax SMTP Client timeout settings as discussed. - default is 30 seconds - Server greeting 90 seconds (DNS lookups for RBLs might be slow And this is a real-world case where perhaps we need to be more forgiving than 30 seconds because of someone elses badly configured mail server. I increased the timeout from 30 seconds to 230 seconds and - to my relief, mail started to be delivered. I think this timeout should be configurable Sam
[Citadel Development] Re: bugs and inconsistencies ; documentation
On 15/05/11 16:06, dothebart wrote: /sendcommand: started (pid=28583) running in 504/ /Attaching to server.../ /potzblitz Citadel server ready./ /Authenticated as an internal program./ /LPRM/ /100 Publiic rooms:/ /Lobby|2|0|0|0|422|0|0|1302842947|/ /testbcc|2|0|64|16|422|0|1|1305378302|/ /testml|2|0|64|0|422|0|1|1304971292|/ /testml1|2|0|64|0|422|0|1|1304971122|/ /testml3|2|0|64|0|422|0|1|1304975085|/ /Trashcan|2|0|64|0|422|0|0|1302842941|/ /sendcommand: processing ended./ what else would you expect? // / I think he wonders why Public is spelt Publ_ii_c with 2 i's Sam /
[Citadel Development] Re: Embargoed: multiple jabber servers vulnerable to denial of service
On 05/05/11 12:46, IGnatius T Foobar wrote: I'm willing to hold off on releasing our own security alert, and even perhaps waiting until "0 Day" to release an updated version of the software. What I'm *not* willing to do, is to stop using our source code repository the way it was intended because some tinfoil-hat thinks that someone's going to monitor it for potential abuses. I guess he's not going to give you the chance, next time. git is fine with you having private branches that you merge/push later.
[Citadel Development] Re: [SCM] citadel.org branch, master, updated. 2063519eeba1e97c13732f061faea42556e9488b
On 06/04/11 10:38, dothebart wrote: Di Apr 05 2011 12:39:14 EDTvon "ajc" Betreff: [SCM] citadel.org branch, master, updated. 2063519eeba1e97c13732f061faea42556e9488b Push to the project "citadel.org ": The branch, master has been updated via 2063519eeba1e97c13732f061faea42556e9488b (commit) from 7b25397a71281e53fc9aec4cca4a63d07e2658d8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://code.citadel.org/cgit.cgi/git.citadel.org/commit/?id=2063519eeba1e97c13732f061faea42556e9488b commit 2063519eeba1e97c13732f061faea42556e9488b Author: Art Cancro Date: Tue Apr 5 12:39:09 2011 -0400 Remove all uses of __FUNCTION__ because it is not portable --- are you trying to achieve Visual Studio 6 compileability? I know this macro isn't portable, but most modern compilers offer it. I'm pretty sure that on GCC it isn't really a macro either - certainly you can't paste it to other symbols, and I'm pretty sure it's left behind after the CPP has finished its work. Sam
[Citadel Development] Re: [SCM] citadel.org branch, master, updated. e432540ab02282396bf87eafde6a1698819912ff
On 27/01/11 23:25, IGnatius T Foobar wrote: Ok. This solves the problem of "I can request arbitrary msgnums and the server will give them to me whether or not they exist in a room to which I have access" -- which was only a minor nuisance before, but with Citadel sites being exposed to the public Internet with anonymous guest mode enabled, that would have become quite a large problem. Imagine how lovely it would be if Google indexed it all. :) Unfortunately it takes a little more memory than I wanted it to. I'm also concerned about the binary tree: If the binary tree is not bulk-populated at the start and in a balanced fashion, but rather as messages are seen, then if messages are seen in mostly numerical order, which will happen in folders with large numbers of messages - the sorts of folders where we really want the benefit of a binary tree, then we will end up with an unbalanced binary tree, which will be as bad as a linear search but taking up a lot more memory. Further, if the tree caches "seen" message, it means that if a message has been seen at all in a session, it can always be seen until the session logs out, even if the message has been removed from all rooms available to the user. In other words it makes it hard to withdraw access. Maybe the user hadn't even read the message, but merely had it loaded into a room index. The admin moves the message to a restricted room, but all users who ever had it listed in their index can still see it until they log out. It seems to me that the new code is worse than the old code in terms of memory usage, not better in terms of the cases that ought to benefit, and worse in terms of security. I think the binary search of the linear list that was committed is a better solution. If a binary tree is used, it should be a balanced tree. I think there are bigger potential performance gains than can be had here, if performance is a problem. Sam
[Citadel Development] 303 Status response
W3C seem to have updated RCS's inlreation to the meaning and use of the HTTP 302 and 303 status responses: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html It looks like whether or not 302 or 303 is used should possible depend on the level of HTTP in the request. I would therefore like to suggest again, that where possible, citadel should not return body as a result of post, but save state and then issue a 303 to re-request the correct view. This avoids browser pain if/when the back button is used. I have no strong case to make, I merely mention it as potential best-practice. Sam 10.3.3 302 Found The requested resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client SHOULD continue to use the Request-URI for future requests. This response is only cacheable if indicated by a Cache-Control or Expires header field. The temporary URI SHOULD be given by the Location field in the response. Unless the request method was HEAD, the entity of the response SHOULD contain a short hypertext note with a hyperlink to the new URI(s). If the 302 status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued. Note: RFC 1945 and RFC 2068 specify that the client is not allowed to change the method on the redirected request. However, most existing user agent implementations treat 302 as if it were a 303 response, performing a GET on the Location field-value regardless of the original request method. The status codes 303 and 307 have been added for servers that wish to make unambiguously clear which kind of reaction is expected of the client. 10.3.4 303 See Other The response to the request can be found under a different URI and SHOULD be retrieved using a GET method on that resource. This method exists primarily to allow the output of a POST-activated script to redirect the user agent to a selected resource. The new URI is not a substitute reference for the originally requested resource. The 303 response MUST NOT be cached, but the response to the second (redirected) request might be cacheable. The different URI SHOULD be given by the Location field in the response. Unless the request method was HEAD, the entity of the response SHOULD contain a short hypertext note with a hyperlink to the new URI(s). Note: Many pre-HTTP/1.1 user agents do not understand the 303 status. When interoperability with such clients is a concern, the 302 status code may be used instead, since most user agents react to a 302 response as described here for 303.
[Citadel Development] Re: Message security
On 19/01/11 13:02, IGnatius T Foobar wrote: >Even after you explicitly log out of one of the accounts? What does >"logout" mean in such a case? Is the message requested in the context of >the logged-out account, or the new logged in account? Try it again now; it *should* theoretically act like "any other web site" at this point. If you log out from one window, the session should be logged out and the other window should reflect that as well. Thanks; I'll try it. But, to be clear, as I think I failed to be clear: window-1 was logged in as user-1 window-2 logged out as user-1 and logged in as user-2 window-1 could still read messages from user-1 window-2 could still read messages from user-2 So the same browser had read-access to two different accounts at the same time. I don't see how each browser was routing to a different webcit->citadel session so it suggests that a session was reading messages that did not belong to the logged in user. That's a different problem to logout plain not working. Sam
[Citadel Development] Re: Message security
On 18/01/11 18:59, IGnatius T Foobar wrote: There was, however, a problem with sessions not being *fully* logged out. I have just fixed that. I doubt we will ever have the ability to log in two different users at the same time from the same browser. On the other hand, I have been adding "go=" url components to a lot of the stuff I've been touching, so that if a user has two different windows open in two different rooms it'll try to keep each window in the correct room. Cool. I didn't want the capability, I was just horrified that it worked after I logged out. Sam
[Citadel Development] Re: Message security
On 18/01/11 16:10, dothebart wrote: because of the use of cookie based authentication you can't do that with one browser. I did do it. if you're able to reproduce this with two browsers (run a chrome and a firefox) and we have a problem. Since the client knows the room its in, messages from "wrong" rooms will be displayed. Even after you explicitly log out of one of the accounts? What does "logout" mean in such a case? Is the message requested in the context of the logged-out account, or the new logged in account? Either way seems wrong. Sam
[Citadel Development] Message security
Try this on a recent citadel HEAD: Have two accounts with messages in the mailbox. Open to browser windows with the same browser instance. Login window 1 to webcit and bring up the mailbox view Open the same view on window 2, and then logout on window 2 Login window 2 to the other webcit account and bring to mailbox view You should now have 2 windows both seeming to be logged into webcit but with different accounts. Now for the fun: On each window, click on messages in the mail list. Be surprised that they BOTH work, even though session 1 is supposed to be logged out.
[Citadel Development] Re: HELP HELP Re: [SCM] citadel.org branch, master, updated. e396526ea63700bee599f96fc03e72fc8ea503c2
On 11/01/11 14:34, samjam wrote: On 11/01/11 12:38, samjam wrote: On 11/01/11 05:09, IGnatius T Foobar wrote: It's been a productive evening. :) Wiki now works and looks good, even in guest mode. Thanks very much. I'll give it a go. I'll give guest mode a go too, I've never tried that yet. Sam I tried anonymous access and was started at the number of rooms that were available including a room called "trash" which included a lot of mail addressed to users on my system. The "room list" show many rooms but not divided into floors. This seems to have permanently damaged my own room view, when I logged in again, I now get a room list without floors and without my own mail folders. EEEK. I then disabled anonymous access - but it's not disabled! It still works! How can I turn off anon-access? Deleting my cookies put things back to normal - which makes me wonder if a stale-cookie can allow someone to retain anon-access even against policy! Further tests show that room access is denied, but room-list access, and online users list, including the appearance of chat is available.
[Citadel Development] HELP HELP Re: [SCM] citadel.org branch, master, updated. e396526ea63700bee599f96fc03e72fc8ea503c2
On 11/01/11 12:38, samjam wrote: On 11/01/11 05:09, IGnatius T Foobar wrote: It's been a productive evening. :) Wiki now works and looks good, even in guest mode. Thanks very much. I'll give it a go. I'll give guest mode a go too, I've never tried that yet. Sam I tried anonymous access and was started at the number of rooms that were available including a room called "trash" which included a lot of mail addressed to users on my system. The "room list" show many rooms but not divided into floors. This seems to have permanently damaged my own room view, when I logged in again, I now get a room list without floors and without my own mail folders. EEEK. I then disabled anonymous access - but it's not disabled! It still works! How can I turn off anon-access?
[Citadel Development] Re: [SCM] citadel.org branch, master, updated. e396526ea63700bee599f96fc03e72fc8ea503c2
On 11/01/11 12:38, samjam wrote: On 11/01/11 05:09, IGnatius T Foobar wrote: It's been a productive evening. :) Wiki now works and looks good, even in guest mode. Thanks very much. I'll give it a go. Every time I edit a page, my signature get's added automatically to the top. Is this intentional? I note that wiki links with a space in are never able to be shown. The error message reports that the name (with spaces removed) is not available. No doubt the spaces are removed on retrieval but not on creation. I note that the subject line may be specified on creation and edit but is ignored. Are the wiki rooms safe to manipulate via imap? Or would they need magic headers with an RFC822 representation so as to make them easier to I was expecting cunning use of Supersedes: and In-Reply-To: and things like that... not that I'm complaining... (I see that the add-floors capability is still broken/missing) Sam
[Citadel Development] Re: [SCM] citadel.org branch, master, updated. e396526ea63700bee599f96fc03e72fc8ea503c2
On 11/01/11 05:09, IGnatius T Foobar wrote: It's been a productive evening. :) Wiki now works and looks good, even in guest mode. Thanks very much. I'll give it a go. I'll give guest mode a go too, I've never tried that yet. Sam
[Citadel Development] Re: [SCM] citadel.org branch, libevent, updated. ee15c03b742bbedd404642c9f1306fa3949d00c7
Why disable c-ares? - I guess I'm using it. Should I rebuild with this commit? Sam On 07/01/11 11:07, dothebart wrote: Push to the project "citadel.org ": The branch, libevent has been updated via ee15c03b742bbedd404642c9f1306fa3949d00c7 (commit) via 83ff5dd0d51f8bc4e1f3a37e0eac3bbdc71af842 (commit) from d268f98de5cfcd79b55869b79cc08db6e028c108 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://code.citadel.org/cgit.cgi/git.citadel.org/commit/?id=ee15c03b742bbedd404642c9f1306fa3949d00c7 commit ee15c03b742bbedd404642c9f1306fa3949d00c7 Author: Wilfried Goesgens Date: Fri Jan 7 12:05:22 2011 +0100 libev/libc-ares migration - disable c-ares for now - add fixed ip to connect instead of looked up ip http://code.citadel.org/cgit.cgi/git.citadel.org/commit/?id=83ff5dd0d51f8bc4e1f3a37e0eac3bbdc71af842 commit 83ff5dd0d51f8bc4e1f3a37e0eac3bbdc71af842 Author: Wilfried Goesgens Date: Fri Jan 7 12:04:21 2011 +0100 libev migration - shutdown cleanly. --- Summary of changes: citadel/event_client.c |8 +++-- citadel/modules/eventclient/serv_eventclient.c |3 +- citadel/modules/smtp/serv_smtpeventclient.c| 37 ++- 3 files changed, 29 insertions(+), 19 deletions(-) hooks/post-receive
[Citadel Development] Add, Change or Delete floors
On yesterdays HEAD I can't create floors - the "Add, Change or Delete floors" link from advanced goes to "/webcit/display_floorconfig" which actually displays the "Advanced" menu and not any kind of floor config menu. Sam
[Citadel Development] Re: wiki still does nothing
On 01/01/11 11:58, samjam wrote: With master HEAD I create a new wiki room. When viewing, I see this message: *There is no page called 'home' here.* Select the 'Edit this page' link in the room banner if you would like to create this page. If I select edit, and save the page, I still see the same message. No home page is ever created. Any advice here? Sam
[Citadel Development] edit room does not populate radio boxes
The edit_room view does not pre-populate radio boxes which the check mark, thus any room when editing shows all checkboxes as unchecked
[Citadel Development] wiki still does nothing
With master HEAD I create a new wiki room. When viewing, I see this message: *There is no page called 'home' here.* Select the 'Edit this page' link in the room banner if you would like to create this page. If I select edit, and save the page, I still see the same message. No home page is ever created.
[Citadel Development] webcit create new room broken
The create new room page in webcit is broken on master HEAD The main form to provide room details is permanently scrolled to the bottom and has no scroll-bars, so I can't see anything above the "Type of room" and so can't enter these details.
[Citadel Development] To complete this action, you must log in. FIXME localize this string
I just installed HEAD from master branch, and using webcit when I try to "write a message" I get this popup: To complete this action, you must log in. FIXME localize this string When I try to log in again I get the error: Already logged in. (which I knew anyway - but it still wants be to log in - darned machine)
[Citadel Development] Re: [SCM] citadel.org branch, master, updated. 2b54d172dce8b1b30dc9cc616edfab531dfeb207
On 29/12/10 18:45, ajc wrote: Push to the project "citadel.org ": The branch, master has been updated via 2b54d172dce8b1b30dc9cc616edfab531dfeb207 (commit) from 0bdbaf2df45e3652253b05541800843a07f47852 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://code.citadel.org/cgit.cgi/git.citadel.org/commit/?id=2b54d172dce8b1b30dc9cc616edfab531dfeb207 commit 2b54d172dce8b1b30dc9cc616edfab531dfeb207 Author: Art Cancro Date: Wed Dec 29 13:43:58 2010 -0500 Changed 'free software' to 'open source' to piss off Richard Stallman Hey, watch it, I'm a paying member of the FSF. Now I'm going to have to preach to you. Why did you change it really? (I don't want my use of citadel to be a pawn in anyone's silly games) Sam
[Citadel Development] Re: mime safe these days?
On 15/12/10 09:10, dothebart wrote: Di Dez 14 2010 13:50:44 EST von samjam @ Uncensored Betreff: Re: mime safe these days? On 14/12/10 11:03, dothebart wrote: i've got a mail where just the attached vcard is shown, and the actual content isn't detected, but we should do that later on, since its going to involve functional changes, That seems a good reason not to upgrade - unless it only affects webcit? Sam well, i'd say it vice versa, its a good time to upgrade. its used in webcit and citserver. it should give you a speedup with big messages with several base64 encoded messages, since before we would decode all of them regardless we need it decoded or not. currently my next target is some experiment with libevent and rewriting the SMTP client, so some time till the next mimeparser attack will hapen ;-) So in what circumstances will users be unable to read parts of messages that have a vcard attached? Sam
[Citadel Development] Re: mime safe these days?
On 14/12/10 11:03, dothebart wrote: i've got a mail where just the attached vcard is shown, and the actual content isn't detected, but we should do that later on, since its going to involve functional changes, That seems a good reason not to upgrade - unless it only affects webcit? Sam
[Citadel Development] mime safe these days?
I'm ready to build and deploy git HEAD if the mime stuff is working again. Is it? Sam
[Citadel Development] Re: [SCM] citadel.org branch, master, updated. f56c54a0313a60d1a692dcae9fe3fbd9e25c4d8c
On 22/11/10 23:51, dothebart wrote: ok, two questions here... - do we also have mime containers with binary encoding? - while recursing into sub-mimecontainers... do they have to be decoded first? where does the recursion start? so far if we have an email with for example wmv's or other big shit attached, we will decode the base64 regardles we need it or not; and not just once; 3-times for love... The 'homework helpers' mail parses correctly. also a reminder about the "mime types not served properly" in the hot list. Does message 2851872 in citadel display properly now with these changes? Sam
[Citadel Development] Re: installation failed
On 18/11/10 12:41, IGnatius T Foobar wrote: I'm more concerned with the fact that he posted a newbie installation question to the developer list. It shows that he didn't bother to read the instructions for requesting help. yeah but can you see the "citadel deleted my hard disk" reports? "I did what the devs said and it wiped all my system and lost loads of user emails!" Ouch!
[Citadel Development] Re: installation failed
On 17/11/10 20:17, IGnatius T Foobar wrote: >how to install citadel on centos 5 >i did easy install, Log in as root and enter the following command: rm -rf / Don't do that. I'm guessing that IGnatius was just over-tired. If you are running roundcube, then you are probably running apache, so you need to either run webcit on a different port or use the apache proxy passthrough module. Sam
[Citadel Development] Re: (no subject)
On 16/11/10 22:29, dothebart wrote: Ok, most of the needed bugfixes were cherry-picked into stable-78x. this one i'd like to discuss first, 'caus its a little more intrusive then the other ones; its changes are primarily intended to get a SMTP client timeout: http://code.citadel.org/cgit.cgi/git.citadel.org/commit/?id=a1b7d9e895e73401161427363611b0160f51225f http://code.citadel.org/cgit.cgi/git.citadel.org/commit/?id=9148bf110ec104dd6035c8f511d4c88afb276278 Client-sockets are in non-blocking mode now; we have timeouts after which we abort the SMTP-sesison. This saves us from trapping into tarpits, or just connecting to SMTP-servers that won't send us a greeting within 5 seconds. I think 5 seconds is a bit low for normal slowness. Although most sites respond more quickly, 5 seconds is still a short cutoff. Some sites have a latency of a few seconds, and if they need do do DNS lookup as well over a congested link, 5 seconds will cause failure needlessly. I'd favour at least 30 seconds. Sam
[Citadel Development] Re: IMAP on outlook express
On 15/11/10 11:53, dothebart wrote: with current git master? or older revisions? git master as of a couple of weeks ago I've tried with outlook 2k3, and fixed a bug last weekend. Outlook express, though, not same parentage at all if that doesn't fix their trouble, could you please do a tcpdump? (see the faq for details) will do Thanks Sam
[Citadel Development] IMAP on outlook express
I've got a user with outlook express and IMAP is behaving rotten - they can't even subscribe to their own inbox. I don't have access to such software anymore, anyone here can try it? Sam
[Citadel Development] [PATCH] Remove space between floor names for IMAP compliance
Otherwise causes failures with strict com.sun.mail.imap, causing: Caused by: javax.mail.MessagingException: Missing '(' at start of Namespace; nested exception is: com.sun.mail.iap.ProtocolException: Missing '(' at start of Namespace at com.sun.mail.imap.IMAPStore.getNamespaces(IMAPStore.java:1505) at com.sun.mail.imap.IMAPStore.getPersonalNamespaces(IMAPStore.java:1462) --- citadel/modules/imap/serv_imap.c |1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/citadel/modules/imap/serv_imap.c b/citadel/modules/imap/serv_imap.c index a7c3cb1..fba7c45 100644 --- a/citadel/modules/imap/serv_imap.c +++ b/citadel/modules/imap/serv_imap.c @@ -912,7 +912,6 @@ void imap_namespace(int num_parms, ConstStr *Params) for (i = 0; i < MAXFLOORS; ++i) { fl = CtdlGetCachedFloor(i); if (fl->f_flags & F_INUSE) { - if (floors > 0) cprintf(" "); cprintf("("); snprintf(Namespace, sizeof(Namespace), "%s/", fl->f_name); plain_imap_strout(Namespace);
[Citadel Development] Re: [PATCH] Remove space between floor names for IMAP compliance
Hmmm looks like a bug in citadel/webcit, the message I sent had this body, which shows up in IMAP but not webcit: Otherwise causes failures with strict com.sun.mail.imap, causing: Caused by: javax.mail.MessagingException: Missing '(' at start of Namespace; nested exception is: com.sun.mail.iap.ProtocolException: Missing '(' at start of Namespace at com.sun.mail.imap.IMAPStore.getNamespaces(IMAPStore.java:1505) at com.sun.mail.imap.IMAPStore.getPersonalNamespaces(IMAPStore.java:1462) --- citadel/modules/imap/serv_imap.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-)
[Citadel Development] Re: Commit log to refs/heads/master
Wed Sep 29 2010 6:46:48 am EDT EDT from dothebart @ Uncensored Subject: Re: Commit log to refs/heads/master hm, maybe the leading / is wrong? /webcit/ should have been entered by the user in advance, and webcit just ignores/keeps it. no doubt, as you say, the leading / is wrong. remember that you need to restart webcit if you add new files to any of its static & template directories. In my case it was browser-side caching. Yes, there shouldn't be any links to external resources ;-)
[Citadel Development] Loading directly from getsatisfaction
Why are the new templates loading css direct from getsatisfaction? Warning: Unknown property 'border-radius'. Declaration dropped.Source File: http://assets1.getsatisfaction.com/stylesheets/42cdb3c052/topic.cssLine: 405 Sam
[Citadel Development] Re: Commit log to refs/heads/master
Wed Sep 29 2010 3:52:52 am EDT EDT from samjam @ Uncensored Subject: Re: Commit log to refs/heads/master Tue Sep 28 2010 5:43:40 pm EDT EDT from "Art Cancro" Subject: Commit log to refs/heads/master Files: 539dc48c5443282a65bb7b600142fee7229a7e4d webcit/static/styles/webcit.css Drop shadows under sticky notes. Cool! behavior: url(/static/styles/PIE.htc);shouldn't that be behavior: url(/webcit/static/styles/PIE.htc);? err. maybe not, /static/styles/PIE.htc works for me after all, I'm just trying to work out why I'm not getting any of the new effects.
[Citadel Development] Re: Commit log to refs/heads/master
Tue Sep 28 2010 5:43:40 pm EDT EDT from "Art Cancro" Subject: Commit log to refs/heads/master Files: 539dc48c5443282a65bb7b600142fee7229a7e4d webcit/static/styles/webcit.css Drop shadows under sticky notes. Cool! behavior: url(/static/styles/PIE.htc);shouldn't that be behavior: url(/webcit/static/styles/PIE.htc);?
[Citadel Development] Re: Commit log to refs/heads/master
Tue Sep 14 2010 1:22:03 pm EDT EDT from IGnatius T Foobar @ Uncensored Subject: Re: Commit log to refs/heads/master How is this information stored on disk? Which information? The id's of messages in rooms. Is it a list or a tree or a hash or a string?
[Citadel Development] Re: Commit log to refs/heads/master
Fri Sep 10 2010 4:36:38 pm EDT EDT from "Art Cancro" Subject: Commit log to refs/heads/master Files: cb7c600b56cf213ac36464ce85302192f213b03a citadel/msgbase.c Applied samjam's CtdlMessageInRoom() patch but wrapped it around an #ifdef pending a performance review. I suspect that this could cause a problem on rooms with tens of thousands of messages. How is this information stored on disk?
[Citadel Development] Sender address broken
In nearly git-head of citadel, composing a mail message with webcit doesn't let me choose my identity, doesn't even choose my primary internet email address, but insists on making my from address be user.n...@full.host.name instead of u...@domain.name I ran IGAB command but it made no difference. In the end I had to make a change to my personal vcard (and then change it back). Possibly whatever happened then (perhaps due to an upgrade) should happen automatically on login. Sam
[Citadel Development] Edit drafts, was Re: others messages
I think the initial HTTP handler should load the message from drafts and store it in the session, and then issue an HTTP redirect to the compose screen with a force-room. Thus (because of the redirect) a browser refresh will be to the redirected URL in the room to continue the edit. Sam
[Citadel Development] Edit drafts, was Re: others messages
Sat Sep 11 2010 7:34:03 am EDT EDT from dothebart @ Uncensored Subject: Edit drafts, was Re: others messages Fr Sep 10 2010 11:28:58 EDT von samjam @ Uncensored Betreff: Edit drafts, was Re: others messages Fri Sep 10 2010 11:15:23 am EDT EDT from dothebart @ Uncensored Subject: Edit drafts, was Re: others messages Sam, have a look (from this message editing thing i'm just using): <input type="hidden" name="force_room" value="Citadel Development"> its just posted to the server. If you add an attachment, the message isn't reloaded from the server, but you'll rather get the stuff you just posted next to the upload back into your edit window. Once you press 'send' it will go to that room, and post the message from there. (ok, we have one cavehat here: the post button is labeled differently depending on the view of the room, which probably won't work out in some cases, but I realy think we can live with that) if, instead of THISROOM:NAME (is it? didn't look..) you offer a way to go to CITEROOM instead aren't we just done with it? please correct me if i'm wrong. You don't cover all the cases. The case where the use adds an attachment isn't the same as the user pressing refresh to re-load the page (which is likely on a poor network - GPRS or 3G). But also we need to goto the room before we show the edit page so that the To, Cc are (or are not, for room posts) properly shown (it's not just the post button). in that case he's still in the drafts room, and just reloads what got him to the edit window; so loading the initial edit screen again isn't a problem. However, perhaps the message-to-be-edited body can be preserved in the same way that attachments are preserved. this is not neccesary, as when pressing upload, you also post the current state of your message, which then in term is displayed to you in the previous state again. So when the edit window is bought up it looks at the id of the message to be edited and checks to see if the message is already saved in the session. If so, it probably has already done GOTO the right room (but it can do it anyway). If not, it will load the message, save it in the session, and then goto the right room. If the user clicks refresh (having already done goto the right room) the original message will fail to load again but has already been saved in the session (like an attachment) and so can still be used. Sam the goto just happenes if the user presses the final submit button, so unless he does that, he's still in the drafts room... hm... though it would be nice to have the room banner of your target room, right? and... maybe a dropdown list of your drafts to choose? which wouldn't work the way either of us stated above... Not just the banner, but a mail message needs To and CC, but a normal room message does not. Then think draft calendar items. It would be better to go back to the room you were originally composing in while you continue composing.
[Citadel Development] Re: Fw: [PATCH] Fix typo that prevent message summary from working
Please could somebody apply this patch. Without it, mailbox view doesn't work. Mon Sep 06 2010 7:14:12 am EDT EDT from samjam @ Uncensored Subject: Fw: [PATCH] Fix typo that prevent message summary from working Fix typo that prevent message summary from working --- webcit/static/t/mailsummary_json.html |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/webcit/static/t/mailsummary_json.html b/webcit/static/t/mailsummary_json.html index 9bf68eb..2e3a749 100644 --- a/webcit/static/t/mailsummary_json.html +++ b/webcit/static/t/mailsummary_json.html @@ -1,5 +1,5 @@ { "nummsgs": , -"startmsg": , +"startmsg": , "roomname": "", "msgs": [ ]
[Citadel Development] Re: others messages
Mon Sep 06 2010 11:09:28 am EDT EDT from IGnatius T Foobar @ Uncensored Subject: Re: others messages Yes I did, but it has not been implemented. I post a patch below. It works for me but has two possible optimizations that could follow: 1. I believe the message list is sorted so the loop could terminate early if msglist[i]>msgnum 2. The message list could be cached in the room somewhere Also CtdlFetchMessage checks with CtdlMessageInRoom - perhaps this is not needed? I don't really know, but it seems a good idea from security as long as citadel replication enters the room first. Maybe being in CtdlFetchMessage breaks the xmlbackup?
[Citadel Development] Edit drafts, was Re: others messages
Fri Sep 10 2010 7:49:21 am EDT EDT from samjam @ Uncensored Subject: Re: others messages We'll have to revert Wilfried's modifications to drafts in "82932fb6b663050ba7812555ddfb526a4fbe98b0" described as "Modification: use force_room instead of creating a new solution" because force_room changes room before reading the message out of the current room. I'll supply a fix for that soon. Well... I'm not sure about that either. Perhaps Wilfrieds answer is best, but then we need an option to explicitly load a message out of the non-current room. Certainly we can't have tmplput_EDIT_MAIL_BODY() change the room, because a browser refresh would then fail to load the message from drafts as the room will have been changed. Perhaps the answer is for tmplput_EDIT_MAIL_BODY() to be told the original room as well as message number so that it can read the message from that room by temporarily changing back to the room (after the force room) and then changing back to the force room again.
[Citadel Development] Re: others messages
Fri Sep 10 2010 7:36:29 am EDT EDT from samjam @ Uncensored Subject: Re: others messages Mon Sep 06 2010 11:09:28 am EDT EDT from IGnatius T Foobar @ Uncensored Subject: Re: others messages Yes I did, but it has not been implemented. I post a patch below. It works for me but has two possible optimizations that could follow: 1. I believe the message list is sorted so the loop could terminate early if msglist[i]>msgnum 2. The message list could be cached in the room somewhere Also CtdlFetchMessage checks with CtdlMessageInRoom - perhaps this is not needed? I don't really know, but it seems a good idea from security as long as citadel replication enters the room first. Maybe being in CtdlFetchMessage breaks the xmlbackup? We'll have to revert Wilfried's modifications to drafts in "82932fb6b663050ba7812555ddfb526a4fbe98b0" described as "Modification: use force_room instead of creating a new solution" because force_room changes room before reading the message out of the current room. I'll supply a fix for that soon.
[Citadel Development] Fw: [PATCH] Don't serve up messages unless they are in the validated room
Don't serve up messages unless they are in the validated room Otherwise users can issue MSG4 with message-id's from a private room and read private messages --- citadel/msgbase.c | 52 +++- 1 files changed, 51 insertions(+), 1 deletions(-) diff --git a/citadel/msgbase.c b/citadel/msgbase.c index d7f832a..560b9b2 100644 --- a/citadel/msgbase.c +++ b/citadel/msgbase.c @@ -1097,7 +1097,47 @@ void mime_spew_section(char *name, char *filename, char *partnum, char *disp, } } +/* + * Check if a message is in the current room. + * This is used by CtdlFetchMessage to prevent random picking + * of messages from users private rooms + * + * The message list should probably be cached against the CC->room + */ +int CtdlMessageInRoom(long msgnum) +{ + visit vbuf; + struct cdbdata *cdbfr; + + /* Learn about the user and room in question */ + CtdlGetUser(&CC->user, CC->curr_user); + CtdlGetRelationship(&vbuf, &CC->user, &CC->room); + /* Load the message list */ + cdbfr = cdb_fetch(CDB_MSGLISTS, &CC->room.QRnumber, sizeof(long)); + if (cdbfr != NULL) { + long *msglist = NULL; + int num_msgs = 0; + int i; + int r = 0; + + msglist = (long *) cdbfr->ptr; + num_msgs = cdbfr->len / sizeof(long); + + /* search for message msgnum */ + for (i=0; i
[Citadel Development] Edit drafts, was Re: others messages
Fri Sep 10 2010 9:51:16 am EDT EDT from dothebart @ Uncensored Subject: Edit drafts, was Re: others messages Fr Sep 10 2010 08:32:44 EDT von samjam @ Uncensored Betreff: Edit drafts, was Re: others messages Fri Sep 10 2010 7:49:21 am EDT EDT from samjam @ Uncensored Subject: Re: others messages We'll have to revert Wilfried's modifications to drafts in "82932fb6b663050ba7812555ddfb526a4fbe98b0" described as "Modification: use force_room instead of creating a new solution" because force_room changes room before reading the message out of the current room. I'll supply a fix for that soon. Well... I'm not sure about that either. Perhaps Wilfrieds answer is best, but then we need an option to explicitly load a message out of the non-current room. Certainly we can't have tmplput_EDIT_MAIL_BODY() change the room, because a browser refresh would then fail to load the message from drafts as the room will have been changed. Perhaps the answer is for tmplput_EDIT_MAIL_BODY() to be told the original room as well as message number so that it can read the message from that room by temporarily changing back to the room (after the force room) and then changing back to the force room again. force-room is the room to enter when posting the message (not neccesarily the one to load the cited message from...) you'd probably have to override the current logic in case of having that header in a mail.. The original room is a header sent with the MSG4 primary answer? If the X-Citadel-Room header is set, then we go to this room, otherwise we go to _MAIL_ - but, only after fetching the message. in that case just register a handler to it, add a conditional that returns whether its set or not, and a tmplput that puts it into the template If tmplput_EDIT_MAIL_BODY() will issue the GOTO to go back to the room containing the message to be edited in order to get the message(after the force room; or for the case where the user clicks refresh) then the message must not come from a password protected room or the user would have to enter their password again. So we need to be able to get the message to be edited before we change rooms (meaning we can't use force_room, but it seems wrong for a templ_put function to change room). But if the user then clicks refresh on the browser we will have already left that room and won't be able to fetch it again. If the room whose message we are editing is a password room, we won't be able to go back to that room to get it. Maybe we can add something to the session to allow that message to be reloaded even if we are in the wrong room.
[Citadel Development] Edit drafts, was Re: others messages
Fri Sep 10 2010 11:15:23 am EDT EDT from dothebart @ Uncensored Subject: Edit drafts, was Re: others messages Sam, have a look (from this message editing thing i'm just using): its just posted to the server. If you add an attachment, the message isn't reloaded from the server, but you'll rather get the stuff you just posted next to the upload back into your edit window. Once you press 'send' it will go to that room, and post the message from there. (ok, we have one cavehat here: the post button is labeled differently depending on the view of the room, which probably won't work out in some cases, but I realy think we can live with that) if, instead of THISROOM:NAME (is it? didn't look..) you offer a way to go to CITEROOM instead aren't we just done with it? please correct me if i'm wrong. You don't cover all the cases. The case where the use adds an attachment isn't the same as the user pressing refresh to re-load the page (which is likely on a poor network - GPRS or 3G). But also we need to goto the room before we show the edit page so that the To, Cc are (or are not, for room posts) properly shown (it's not just the post button). However, perhaps the message-to-be-edited body can be preserved in the same way that attachments are preserved. So when the edit window is bought up it looks at the id of the message to be edited and checks to see if the message is already saved in the session. If so, it probably has already done GOTO the right room (but it can do it anyway). If not, it will load the message, save it in the session, and then goto the right room. If the user clicks refresh (having already done goto the right room) the original message will fail to load again but has already been saved in the session (like an attachment) and so can still be used. Sam
[Citadel Development] Re:
Wed Sep 08 2010 4:33:02 am EDT EDT from dothebart @ Uncensored MS-RFC-Violator uses the timestamp when it polled the messages from citadel via imap to show and sort them? WTF? Do you mean that that is how it finds new messages?
[Citadel Development] [PATCH] Allow save-to-drafts without recipients
Allow save-to-drafts without recipients > --- citadel/msgbase.c |9 + 1 files changed, 5 insertions(+), 4 deletions(-) Still need to read X-Citadel-Room when resuming from draftsdiff --git a/citadel/msgbase.c b/citadel/msgbase.c index cd4fd5e..d7f832a 100644 --- a/citadel/msgbase.c +++ b/citadel/msgbase.c @@ -4033,12 +4033,13 @@ void cmd_ent0(char *entargs) /* In mailbox rooms we have to behave a little differently -- * make sure the user has specified at least one recipient. Then * validate the recipient(s). We do this for the Mail> room, as - * well as any room which has the "Mailbox" view set. + * well as any room which has the "Mailbox" view set - unless it + * is the DRAFTS room which does not require recipients */ - if ( ( (CC->room.QRflags & QR_MAILBOX) && (!strcasecmp(&CC->room.QRname[11], MAILROOM)) ) - || ( (CC->room.QRflags & QR_MAILBOX) && (CC->curr_view == VIEW_MAILBOX) ) - ) { + if ( ( ( (CC->room.QRflags & QR_MAILBOX) && (!strcasecmp(&CC->room.QRname[11], MAILROOM)) ) + || ( (CC->room.QRflags & QR_MAILBOX) && (CC->curr_view == VIEW_MAILBOX) ) + ) && (strcasecmp(&CC->room.QRname[11], USERDRAFTROOM)) !=0 ) { if (CC->user.axlevel < AxProbU) { strcpy(recp, "sysop"); strcpy(cc, "");
[Citadel Development] Re:
Mon Sep 06 2010 11:11:50 am EDT EDT from IGnatius T Foobar @ Uncensored Ok folks, commit 8f713e8bba92ebb93a9a486d81ec7e966583fd9e in branch stable-78x is the official 7.84 release of all components. tarballs have been built and uploaded. Did you push? Sam
[Citadel Development] Re: dot stuffing broken
Mon Sep 06 2010 3:59:31 pm EDT EDT from dothebart @ Uncensored Subject: Re: dot stuffing broken since in SMTP the dot in the first column on an empty line finishes the message body, AFAIR dots are just doubled? No, just an extra dot is added please provide a printf|nc shellscript demonstrating your claim. If I do a print/nc test, then my own manual SMTP encoding is open to claim of error which would cloud the issue. A safer test is to send a plain-text email from multiple mail clients. I've sent a plain text email from outlook (as shown below) and thunderbird and as demonstrated an additional dot has been added to the final message body. Also an additional leading blank line (and indent for thunderbird, but that's thunderbirds fault) is added; below is an ngrep -x capture of a plain-text message from outlook over the smtp port 58 2d 4d 6c 66 2d 56 65 72 73 69 6f 6e 3a 20 37 X-Mlf-Version: 7 2e 32 2e 34 2e 33 37 32 35 0d 0a 58 2d 4d 6c 66 .2.4.3725..X-Mlf 2d 55 6e 69 71 75 65 49 64 3a 20 6f 32 30 31 30 -UniqueId: o2010 30 39 30 37 30 36 34 33 35 38 30 30 31 32 30 36 0907064358001206 32 0d 0a 0d 0a 31 64 6f 74 0d 0a 2e 2e 0d 0a 32 21dot..2 64 6f 74 0d 0a 2e 2e 2e 0d 0a 33 64 6f 74 0d 0a dot...3dot.. 2e 2e 2e 2e 0d 0a 34 64 6f 74 0d 0a 2e 2e 2e 2e ..4dot.. 2e 0d 0a 0d 0a 2e 0d 0a The message sent was: 1dot.2dot..3dot...4dot... And so we see from ngrep above that in SMTP an extra dot was added by exchange server when talking to citadel. This is correct. The message shown in thunderbird via imap is: 1dot..2dot...3dot4dot. And so we see that the extra dot sent via smtp is still in the message and has not been removed by citadel. Also, in the ngrep, note the 0d 0a 0d 0a in intalics showing that there is only one blank line after the headers are terminated, but thunderbird IMAP shows two blank lines. This happens for messages sent via SMTP but not messages sent via webcit. In these two instances, citadel SMTP has changed the message. Sam Mo Sep 06 2010 11:27:53 EDT von samjam @ Uncensored Betreff: dot stuffing broken Using SMTP, send yourself a plain-text message with a body like this: 1dot . 2dots .. 3dots ... 4dots And what you will get in your inbox is a message like this: 1dot..2dots...3dots4dots. The extra dots added by SMTP don't seem to get removed by citadel
[Citadel Development] Re:
Tue Sep 07 2010 8:29:02 am EDT EDT from IGnatius T Foobar @ Uncensored Subject: Re: Did you push? Yes. silly me; git log | less -p 8f713e8bba92ebb93a9a486d81ec7e966583fd9e is not the same as git log 8f713e8bba92ebb93a9a486d81ec7e966583fd9e Sam
[Citadel Development] Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files
Mon Sep 06 2010 5:11:39 am EDT EDT from samjam @ Uncensored Subject: Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files Sun Sep 05 2010 2:24:33 pm EDT EDT from dothebart @ Uncensored Subject: Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files hm, did you run that script in advance? since its not clever to rename subdirectories (citadel/ to citadel-7.83) in a git workingcopy (and symlink citadel/ to it), I instead made it create the symlink to the citadel directory. If you already have it the other way arround, it won't work for you then ;-) Not at all. Originally I did what you did, but it's not enough - ./buildpackage debian src doesn't work and ./buildpackage src produces different paths to originally (because tar follows the symlink before tar-ing). With just your patch, clean "/.buildpackage debain" were failing and symlinks-to-self of citadel was created in the citadel folder and of libcitadel in the libcitadel folder which made builds fail. Sam As ti turns out, that patch isn't very good. I've been having problems with stgit missing chunks or whole changesets. I'm just rebasing master (and confirmed the symlink loop) and will re-do the patch and post shortly. Sam
[Citadel Development] Re: Fw: [PATCH] Re-enable drafts
Sun Sep 05 2010 2:44:51 pm EDT EDT from dothebart @ Uncensored Subject: Re: Fw: [PATCH] Re-enable drafts afair IG disabled it because of it was getting late to get a 7.60 release out; maybe the history of this room of that time shows a more detailed reason. I think some of the concepts weren't all clean yet; probably when that 'save to drafts' button should be shown and when not; or, what to do with a draft if it was for example targeted to a public room (a forum in advance) how' d you continue posting that message into that room (and not just send it out as an email) ? I think we should discuss these (and other questions) and find a solution to it. Originally, the room was saved as an extra message header so the draft could be picked-up back to the same room. I'll check it all over and post back. Sam diff --git a/citadel/euidindex.c b/citadel/euidindex.c index 842fa1d..8ca39ee 100644 --- a/citadel/euidindex.c +++ b/citadel/euidindex.c @@ -69,6 +69,7 @@ int DoesThisRoomNeedEuidIndexing(struct ctdlroom *qrbuf) { case VIEW_BBS: return(0); case VIEW_MAILBOX: return(0); case VIEW_ADDRESSBOOK: return(1); + case VIEW_DRAFTS: return(0); case VIEW_CALENDAR: return(1); case VIEW_TASKS: return(1); case VIEW_NOTES: return(1); diff --git a/citadel/user_ops.c b/citadel/user_ops.c index 2f23c38..d68d334 100644 --- a/citadel/user_ops.c +++ b/citadel/user_ops.c @@ -739,7 +739,7 @@ void do_login(void) CtdlCreateRoom(MAILROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); CtdlCreateRoom(SENTITEMS, 4, "", 0, 1, 0, VIEW_MAILBOX); CtdlCreateRoom(USERTRASHROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); - /* CtdlCreateRoom(USERDRAFTROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); temporarily disabled for 7.60 */ + CtdlCreateRoom(USERDRAFTROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); /* Run any startup routines registered by loadable modules */ PerformSessionHooks(EVT_LOGIN); diff --git a/libcitadel/lib/libcitadel.h b/libcitadel/lib/libcitadel.h index 69781b6..82c0ec6 100644 --- a/libcitadel/lib/libcitadel.h +++ b/libcitadel/lib/libcitadel.h @@ -103,6 +103,7 @@ typedef enum _room_views { VIEW_CALBRIEF = 7, /* Brief Calendar view */ VIEW_JOURNAL = 8, /* Journal view */ VIEW_BLOG = 9, /* Blog view */ + VIEW_DRAFTS = 10, /* Drafts view */ VIEW_MAX } ROOM_VIEWS; diff --git a/webcit/static/t/edit_message.html b/webcit/static/t/edit_message.html index 600dd67..7febb91 100644 --- a/webcit/static/t/edit_message.html +++ b/webcit/static/t/edit_message.html @@ -14,10 +14,8 @@ "> "> - "> diff --git a/webcit/static/t/view_message.html b/webcit/static/t/view_message.html index aa2150e..941f98b 100644 --- a/webcit/static/t/view_message.html +++ b/webcit/static/t/view_message.html @@ -16,9 +16,7 @@ onMouseOut=document.getElementById("msg").style.visibility="hidden - %7C?subject=">[] %7C?replyquote=&recp=%22%22%3C%3E?subject=">[]
[Citadel Development] Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files
The symlink loop occurs when this line is executed: ln -sf libcitadel libcitadel-7.83cd libcitadel-7.83 if libcitadel-7.83 is already a symlink pointing to libcitadel - so the symlink get's made inside libcitadel. The -f option doesn't have the desired effect if the pre-existing symlink target is a directory. Patch to follow. It would help sending git-patches if drafts-mode patch could be enabled on uncensored; git-imap-send dumps the diff and message in my drafts folder ready for me to pick-up.
[Citadel Development] Fw: [PATCH] Fix typo that prevent message summary from working
Fix typo that prevent message summary from working --- webcit/static/t/mailsummary_json.html |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/webcit/static/t/mailsummary_json.html b/webcit/static/t/mailsummary_json.html index 9bf68eb..2e3a749 100644 --- a/webcit/static/t/mailsummary_json.html +++ b/webcit/static/t/mailsummary_json.html @@ -1,5 +1,5 @@ { "nummsgs": , -"startmsg": , +"startmsg": , "roomname": "", "msgs": [ ]
[Citadel Development] Fw: [PATCH] Fake the old version number for the paths inside the tar files
Helps for: ./buildpackes debian src and ./buildpackages sourcedist Also prevent the symlink from being created inside the target if the symlink already exists and points to the target --- citadel/buildpackages| 16 libcitadel/buildpackages | 15 --- webcit/buildpackages | 12 ++-- 3 files changed, 22 insertions(+), 21 deletions(-) diff --git a/citadel/buildpackages b/citadel/buildpackages index 8b18185..00e12c5 100755 --- a/citadel/buildpackages +++ b/citadel/buildpackages @@ -29,6 +29,7 @@ else fi if test "$done" = "false"; then cd .. + rm -f "citadel-$CITADEL_VERSION" ln -sf citadel "citadel-$CITADEL_VERSION" cd "citadel-$CITADEL_VERSION" else @@ -47,18 +48,17 @@ case $1 in fi if test "$2" == "src"; then - cd .. - rm -rf tmp - mkdir tmp - cp -rL citadel-$CITADEL_VERSION tmp - cd tmp/citadel-$CITADEL_VERSION + rm -fr ../tmp/citadel-$CITADEL_VERSION + mkdir -p ../tmp/citadel-$CITADEL_VERSION + cp -rL . ../tmp/citadel-$CITADEL_VERSION + cd ../tmp/citadel-$CITADEL_VERSION rm -rf `find -name .svn ` svn*tmp config.log config.status find -type f -exec chmod a-x {} \; chmod a+x configure *.sh *.sh.in debian/rules debian/*inst* debian/rules mkinstalldirs cd .. tar -chzf citadel_${CITADEL_VERSION}.orig.tar.gz citadel-${CITADEL_VERSION}/ --exclude "debian/*" pwd - cd citadel-${CITADEL_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd citadel-${CITADEL_VERSION} && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -100,8 +100,8 @@ email=cita...@outgesourced.org ;; sourcedist) - cd ..; tar --exclude .svn --exclude "debian/*" -chvzf citadel-$CITADEL_VERSION.tar.gz citadel-$CITADEL_VERSION/ - ;; + cd ..; tar --exclude .svn --exclude "debian/*" -chvzf citadel-$CITADEL_VERSION.tar.gz --transform "s/^citadel/citadel-${CITADEL_VERSION}/" citadel/ +;; *) echo "Not yet implemented. we have: debian " ;; diff --git a/libcitadel/buildpackages b/libcitadel/buildpackages index 0766d40..54fa75e 100755 --- a/libcitadel/buildpackages +++ b/libcitadel/buildpackages @@ -29,6 +29,7 @@ else fi if test "$done" = "false"; then cd .. + rm -f "libcitadel-$LIBCITADEL_VERSION" ln -sf libcitadel "libcitadel-$LIBCITADEL_VERSION" cd "libcitadel-$LIBCITADEL_VERSION" else @@ -47,18 +48,17 @@ case $1 in fi if test "$2" == "src"; then - cd .. - rm -rf tmp - mkdir tmp - cp -rL libcitadel-$LIBCITADEL_VERSION tmp - cd tmp/libcitadel-$LIBCITADEL_VERSION + rm -rf ../tmp/libcitadel-$LIBCITADEL_VERSION + mkdir -p ../tmp/libcitadel-$LIBCITADEL_VERSION + cp -rL . ../tmp/libcitadel-$LIBCITADEL_VERSION + cd ../tmp/libcitadel-$LIBCITADEL_VERSION rm -rf `find -name .svn ` svn*tmp config.log config.status `find -name .libs` find -type f -exec chmod a-x {} \; chmod a+x configure cd .. tar -chzf libcitadel_${LIBCITADEL_VERSION}.orig.tar.gz libcitadel-${LIBCITADEL_VERSION}/ --exclude "debian/*" pwd - cd libcitadel-${LIBCITADEL_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd libcitadel-${LIBCITADEL_VERSION} && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -110,7 +110,8 @@ email=cita...@outgesourced.org --exclude "debian/*" \ --exclude "sysdep.h" \ \ - -chvzf libcitadel-$LIBCITADEL_VERSION.tar.gz libcitadel-$LIBCITADEL_VERSION/ + -cvhzf libcitadel-${LIBCITADEL_VERSION}.tar.gz --transform "s/^libcitadel/libcitadel-${LIBCITADEL_VERSION}/" libcitadel/ + ;; *) echo "Not yet implemented. we have: debian " diff --git a/webcit/buildpackages b/webcit/buildpackages index 8a066da..5d99504 100755 --- a/webcit/buildpackages +++ b/webcit/buildpackages @@ -26,6 +26,7 @@ else fi if test "$done" = "false"; then cd .. + rm -f "webcit-$WEBCIT_VERSION" ln -sf webcit "webcit-$WEBCIT_VERSION" cd "webcit-$WEBCIT_VERSION" else @@ -42,18 +43,17 @@ case $1 in echo "Upstream Version higher than local." fi if test "$2" == "src"; then - cd .. rm -rf tmp - mkdir tmp - cp -rL webcit-$WEBCIT_VERSION tmp - cd tmp/webcit-$WEBCIT_VERSION + mkdir -p ../tmp/webcit-$WEBCIT_VERSION + cp -rL . ../tmp/webcit-$WEBCIT_VERSION + cd ../tmp/webcit-$WEBCIT_VERSION rm -rf `find -name .svn ` svn*tmp* build-stamp configure-stamp *~ config.guess config.log config.status autom4te.cache Makefile find -type f -exec chmod a-x {} \; chmod a+x configure debian/rules po/create-pot.sh mk_module_init.sh cd .. tar -chzf webcit_${WEBCIT_VERSION}.orig.tar.gz webcit-${WEBCIT_VERSION}/ --exclude "debian/*" pwd - cd webcit-${WEBCIT_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd webcit-$WEBCIT_VERSION && debuild -S -sa -kw.goesg...@outgesourced.org else
[Citadel Development] Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files
Mon Sep 06 2010 7:12:03 am EDT EDT from samjam @ Uncensored Subject: Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files The symlink loop occurs when this line is executed: ln -sf libcitadel libcitadel-7.83cd libcitadel-7.83 if libcitadel-7.83 is already a symlink pointing to libcitadel - so the symlink get's made inside libcitadel. The -f option doesn't have the desired effect if the pre-existing symlink target is a directory. Patch to follow. It would help sending git-patches if drafts-mode patch could be enabled on uncensored; git-imap-send dumps the diff and message in my drafts folder ready for me to pick-up. Although I found the un-quote button works nice. (Why doesn't the un-quote button appear for normal builds, but shows up on uncensored?)
[Citadel Development] others messages
citadel still lets a logged in user read messages belonging to any other user. test: login as yourself, and try MSG4 with arbitrary message-numbers. I think Art proposed a fix which would be to cause the MSG* functions to make sure that the requested message was in the current room
[Citadel Development] Re: Fw: [PATCH] Re-enable drafts
Sun Sep 05 2010 2:44:51 pm EDT EDT from dothebart @ Uncensored Subject: Re: Fw: [PATCH] Re-enable drafts afair IG disabled it because of it was getting late to get a 7.60 release out; maybe the history of this room of that time shows a more detailed reason. I think some of the concepts weren't all clean yet; probably when that 'save to drafts' button should be shown and when not; or, what to do with a draft if it was for example targeted to a public room (a forum in advance) how' d you continue posting that message into that room (and not just send it out as an email) ? I think we should discuss these (and other questions) and find a solution to it. Yep; I see that save-to-drafs from a room now complains at lack of recipients. I'll look back to my original patches in my old git-svn tree where recipients weren't required to save-to-drafts and it remembered the active room as an SMTP header. Sam diff --git a/citadel/euidindex.c b/citadel/euidindex.c index 842fa1d..8ca39ee 100644 --- a/citadel/euidindex.c +++ b/citadel/euidindex.c @@ -69,6 +69,7 @@ int DoesThisRoomNeedEuidIndexing(struct ctdlroom *qrbuf) { case VIEW_BBS: return(0); case VIEW_MAILBOX: return(0); case VIEW_ADDRESSBOOK: return(1); + case VIEW_DRAFTS: return(0); case VIEW_CALENDAR: return(1); case VIEW_TASKS: return(1); case VIEW_NOTES: return(1); diff --git a/citadel/user_ops.c b/citadel/user_ops.c index 2f23c38..d68d334 100644 --- a/citadel/user_ops.c +++ b/citadel/user_ops.c @@ -739,7 +739,7 @@ void do_login(void) CtdlCreateRoom(MAILROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); CtdlCreateRoom(SENTITEMS, 4, "", 0, 1, 0, VIEW_MAILBOX); CtdlCreateRoom(USERTRASHROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); - /* CtdlCreateRoom(USERDRAFTROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); temporarily disabled for 7.60 */ + CtdlCreateRoom(USERDRAFTROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); /* Run any startup routines registered by loadable modules */ PerformSessionHooks(EVT_LOGIN); diff --git a/libcitadel/lib/libcitadel.h b/libcitadel/lib/libcitadel.h index 69781b6..82c0ec6 100644 --- a/libcitadel/lib/libcitadel.h +++ b/libcitadel/lib/libcitadel.h @@ -103,6 +103,7 @@ typedef enum _room_views { VIEW_CALBRIEF = 7, /* Brief Calendar view */ VIEW_JOURNAL = 8, /* Journal view */ VIEW_BLOG = 9, /* Blog view */ + VIEW_DRAFTS = 10, /* Drafts view */ VIEW_MAX } ROOM_VIEWS; diff --git a/webcit/static/t/edit_message.html b/webcit/static/t/edit_message.html index 600dd67..7febb91 100644 --- a/webcit/static/t/edit_message.html +++ b/webcit/static/t/edit_message.html @@ -14,10 +14,8 @@ "> "> - "> diff --git a/webcit/static/t/view_message.html b/webcit/static/t/view_message.html index aa2150e..941f98b 100644 --- a/webcit/static/t/view_message.html +++ b/webcit/static/t/view_message.html @@ -16,9 +16,7 @@ onMouseOut=document.getElementById("msg").style.visibility="hidden - %7C?subject=">[] %7C?replyquote=&recp=%22%22%3C%3E?subject=">[]
[Citadel Development] Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files
Sun Sep 05 2010 2:24:33 pm EDT EDT from dothebart @ Uncensored Subject: Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files hm, did you run that script in advance? since its not clever to rename subdirectories (citadel/ to citadel-7.83) in a git workingcopy (and symlink citadel/ to it), I instead made it create the symlink to the citadel directory. If you already have it the other way arround, it won't work for you then ;-) Not at all. Originally I did what you did, but it's not enough - ./buildpackage debian src doesn't work and ./buildpackage src produces different paths to originally (because tar follows the symlink before tar-ing). With just your patch, clean "/.buildpackage debain" were failing and symlinks-to-self of citadel was created in the citadel folder and of libcitadel in the libcitadel folder which made builds fail. Sam diff --git a/citadel/buildpackages b/citadel/buildpackages index 8b18185..e78cc71 100755 --- a/citadel/buildpackages +++ b/citadel/buildpackages @@ -29,7 +29,7 @@ else fi if test "$done" = "false"; then cd .. - ln -sf citadel "citadel-$CITADEL_VERSION" + #ln -sf citadel "citadel-$CITADEL_VERSION" cd "citadel-$CITADEL_VERSION" else cd "../citadel-$CITADEL_VERSION" @@ -47,18 +47,17 @@ case $1 in fi if test "$2" == "src"; then - cd .. - rm -rf tmp - mkdir tmp - cp -rL citadel-$CITADEL_VERSION tmp - cd tmp/citadel-$CITADEL_VERSION + rm -fr ../tmp/citadel-$CITADEL_VERSION + mkdir -p ../tmp/citadel-$CITADEL_VERSION + cp -rL . ../tmp/citadel-$CITADEL_VERSION + cd ../tmp/citadel-$CITADEL_VERSION rm -rf `find -name .svn ` svn*tmp config.log config.status find -type f -exec chmod a-x {} \; chmod a+x configure *.sh *.sh.in debian/rules debian/*inst* debian/rules mkinstalldirs cd .. tar -chzf citadel_${CITADEL_VERSION}.orig.tar.gz citadel-${CITADEL_VERSION}/ --exclude "debian/*" pwd - cd citadel-${CITADEL_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd citadel-${CITADEL_VERSION} && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -100,8 +99,8 @@ email=cita...@outgesourced.org ;; sourcedist) - cd ..; tar --exclude .svn --exclude "debian/*" -chvzf citadel-$CITADEL_VERSION.tar.gz citadel-$CITADEL_VERSION/ - ;; + cd ..; tar --exclude .svn --exclude "debian/*" -chvzf citadel-$CITADEL_VERSION.tar.gz --transform "s/^citadel/citadel-${CITADEL_VERSION}/" citadel/ +;; *) echo "Not yet implemented. we have: debian " ;;
[Citadel Development] webcit stopped display message list
I'm investigating why webcit has stopped displaying the message list. The http request: https://mail.liddicott.net/webcit/roommsgs?room=Mail&startmsg=0&stopmsg=-1 now completes fine (and firefox downloads the json), but the _javascript_ is not doing it's job I guess
[Citadel Development] Re: webcit stopped display message list
Sat Sep 04 2010 9:08:58 am EDT EDT from samjam @ Uncensored Subject: webcit stopped display message list I'm investigating why webcit has stopped displaying the message list. The http request: https://mail.liddicott.net/webcit/roommsgs?room=Mail&startmsg=0&stopmsg=-1 now completes fine (and firefox downloads the json), but the _javascript_ is not doing it's job I guess function loadMessages(transport) { try { var data = ""> the evalJSON is failing with error: SyntaxError: syntax error|undefined The JSON returned was: { "nummsgs": 2,"startmsg": ,"roomname": "Mails\test","msgs": [ [1636,"uh testy uh","Sam Liddicott",1221820278,"Sep 19 2008",true ],[1198,"eh testy eh","sam.liddicott",1221816450,"Sep 19 2008",true ] ]} I guess startmsg should not be empty. git blame shows e6bf3fbb (Wilfried Göesgens 2010-08-29 16:56:48 + 1) { "nummsgs": ,e6bf3fbb (Wilfried Göesgens 2010-08-29 16:56:48 + 2) "startmsg": , patch to follow
[Citadel Development] Fw: [PATCH] Fix typo that prevent message summary from working
/ --- forwarded message --- / > Sat Sep 04 2010 9:32:47 am EDT EDT from "Sam Liddicott" > Subject: [PATCH] Fix typo that prevent >message summary from working > > --- > webcit/static/t/mailsummary_json.html |2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > > > diff --git a/webcit/static/t/mailsummary_json.html b/webcit/static/t/mailsummary_json.html index 9bf68eb..2e3a749 100644 --- a/webcit/static/t/mailsummary_json.html +++ b/webcit/static/t/mailsummary_json.html @@ -1,5 +1,5 @@ { "nummsgs": , -"startmsg": , +"startmsg": , "roomname": "", "msgs": [ ]
[Citadel Development] Fw: [PATCH] Fake the old version number for the paths inside the tar files
This stops ./buildpackage debian getting caught in symlink looks, and makes "./buildpackage src" and "debian src" work / --- forwarded message --- / > Wed Sep 01 2010 8:45:15 am EDT EDT from "Sam Liddicott" > Subject: [PATCH] Fake the old version number for the >paths inside the tar files > > > Helps for: > ./buildpackes debian src > and > ./buildpackages sourcedist > --- > citadel/buildpackages | 17 - > 1 files changed, 8 insertions(+), 9 deletions(-) > > > > diff --git a/citadel/buildpackages b/citadel/buildpackages index 8b18185..e78cc71 100755 --- a/citadel/buildpackages +++ b/citadel/buildpackages @@ -29,7 +29,7 @@ else fi if test "$done" = "false"; then cd .. - ln -sf citadel "citadel-$CITADEL_VERSION" + #ln -sf citadel "citadel-$CITADEL_VERSION" cd "citadel-$CITADEL_VERSION" else cd "../citadel-$CITADEL_VERSION" @@ -47,18 +47,17 @@ case $1 in fi if test "$2" == "src"; then - cd .. - rm -rf tmp - mkdir tmp - cp -rL citadel-$CITADEL_VERSION tmp - cd tmp/citadel-$CITADEL_VERSION + rm -fr ../tmp/citadel-$CITADEL_VERSION + mkdir -p ../tmp/citadel-$CITADEL_VERSION + cp -rL . ../tmp/citadel-$CITADEL_VERSION + cd ../tmp/citadel-$CITADEL_VERSION rm -rf `find -name .svn ` svn*tmp config.log config.status find -type f -exec chmod a-x {} \; chmod a+x configure *.sh *.sh.in debian/rules debian/*inst* debian/rules mkinstalldirs cd .. tar -chzf citadel_${CITADEL_VERSION}.orig.tar.gz citadel-${CITADEL_VERSION}/ --exclude "debian/*" pwd - cd citadel-${CITADEL_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd citadel-${CITADEL_VERSION} && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -100,8 +99,8 @@ email=cita...@outgesourced.org ;; sourcedist) - cd ..; tar --exclude .svn --exclude "debian/*" -chvzf citadel-$CITADEL_VERSION.tar.gz citadel-$CITADEL_VERSION/ - ;; + cd ..; tar --exclude .svn --exclude "debian/*" -chvzf citadel-$CITADEL_VERSION.tar.gz --transform "s/^citadel/citadel-${CITADEL_VERSION}/" citadel/ +;; *) echo "Not yet implemented. we have: debian " ;;
[Citadel Development] Fw: [PATCH] Re-enable drafts
This patch applies to HEAD and re-enables draft folders. I'm using it at home - seems to work - what was wrong with it that it was disabled? Sam / --- forwarded message --- / > Sat Sep 04 2010 4:06:51 am EDT EDT from "Sam Liddicott" > Subject: [PATCH] Re-enable drafts > > --- > citadel/euidindex.c |1 + > citadel/user_ops.c|2 +- > libcitadel/lib/libcitadel.h |1 + > webcit/static/t/edit_message.html |2 -- > webcit/static/t/view_message.html |2 -- > 5 files changed, 3 insertions(+), 5 deletions(-) > > > > diff --git a/citadel/euidindex.c b/citadel/euidindex.c index 842fa1d..8ca39ee 100644 --- a/citadel/euidindex.c +++ b/citadel/euidindex.c @@ -69,6 +69,7 @@ int DoesThisRoomNeedEuidIndexing(struct ctdlroom *qrbuf) { case VIEW_BBS: return(0); case VIEW_MAILBOX: return(0); case VIEW_ADDRESSBOOK: return(1); + case VIEW_DRAFTS: return(0); case VIEW_CALENDAR: return(1); case VIEW_TASKS: return(1); case VIEW_NOTES: return(1); diff --git a/citadel/user_ops.c b/citadel/user_ops.c index 2f23c38..d68d334 100644 --- a/citadel/user_ops.c +++ b/citadel/user_ops.c @@ -739,7 +739,7 @@ void do_login(void) CtdlCreateRoom(MAILROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); CtdlCreateRoom(SENTITEMS, 4, "", 0, 1, 0, VIEW_MAILBOX); CtdlCreateRoom(USERTRASHROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); - /* CtdlCreateRoom(USERDRAFTROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); temporarily disabled for 7.60 */ + CtdlCreateRoom(USERDRAFTROOM, 4, "", 0, 1, 0, VIEW_MAILBOX); /* Run any startup routines registered by loadable modules */ PerformSessionHooks(EVT_LOGIN); diff --git a/libcitadel/lib/libcitadel.h b/libcitadel/lib/libcitadel.h index 69781b6..82c0ec6 100644 --- a/libcitadel/lib/libcitadel.h +++ b/libcitadel/lib/libcitadel.h @@ -103,6 +103,7 @@ typedef enum _room_views { VIEW_CALBRIEF = 7, /* Brief Calendar view */ VIEW_JOURNAL = 8, /* Journal view */ VIEW_BLOG = 9, /* Blog view */ + VIEW_DRAFTS = 10, /* Drafts view */ VIEW_MAX } ROOM_VIEWS; diff --git a/webcit/static/t/edit_message.html b/webcit/static/t/edit_message.html index 600dd67..7febb91 100644 --- a/webcit/static/t/edit_message.html +++ b/webcit/static/t/edit_message.html @@ -14,10 +14,8 @@ "> "> - "> diff --git a/webcit/static/t/view_message.html b/webcit/static/t/view_message.html index aa2150e..941f98b 100644 --- a/webcit/static/t/view_message.html +++ b/webcit/static/t/view_message.html @@ -16,9 +16,7 @@ onMouseOut=document.getElementById("msg").style.visibility="hidden - %7C?subject=">[] %7C?replyquote=&recp=%22%22%3C%3E?subject=">[]
[Citadel Development] Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files
Bah! If I forward a message, it also adds attachments from any previously half-composed messages! This message has the correct proposed patch Sat Sep 04 2010 3:39:28 am EDT EDT from samjam @ Uncensored Subject: Fw: [PATCH] Fake the old version number for the paths inside the tar files (I wish drafts folder worked as a drafts folder in webcit) If this looks good, we probably need the same thing for the other buildpackages --- forwarded message --- Wed Sep 01 2010 8:45:15 am EDT EDT from "Sam Liddicott" Subject: [PATCH] Fake the old version number for the paths inside the tar files Helps for: ./buildpackes debian src and ./buildpackages sourcedist --- webcit/buildpackages | 13 ++--- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/webcit/buildpackages b/webcit/buildpackages index 8a066da..23111fc 100755 --- a/webcit/buildpackages +++ b/webcit/buildpackages @@ -11,7 +11,7 @@ ACTUAL_DIR=`pwd` rm -rf debian/citadel-webcit debian/tmp/ -if echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then +if true || echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then echo "directory ($ACTUAL_DIR) naming scheme seems right. nothing done." else done=false @@ -42,18 +42,17 @@ case $1 in echo "Upstream Version higher than local." fi if test "$2" == "src"; then - cd .. rm -rf tmp - mkdir tmp - cp -rL webcit-$WEBCIT_VERSION tmp - cd tmp/webcit-$WEBCIT_VERSION + mkdir -p ../tmp/webcit-$WEBCIT_VERSION + cp -rL . ../tmp/webcit-$WEBCIT_VERSION + cd ../tmp/webcit-$WEBCIT_VERSION rm -rf `find -name .svn ` svn*tmp* build-stamp configure-stamp *~ config.guess config.log config.status autom4te.cache Makefile find -type f -exec chmod a-x {} \; chmod a+x configure debian/rules po/create-pot.sh mk_module_init.sh cd .. tar -chzf webcit_${WEBCIT_VERSION}.orig.tar.gz webcit-${WEBCIT_VERSION}/ --exclude "debian/*" pwd - cd webcit-${WEBCIT_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd webcit-$WEBCIT_VERSION && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -62,7 +61,7 @@ case $1 in if test "$2" == "dfsg"; then NONDFSG=-"-exclude static/openid-small.gif" fi - cd ..; tar --exclude .svn --exclude "debian/*" $NONDFSG -cvhzf webcit-${WEBCIT_VERSION}.tar.gz webcit-${WEBCIT_VERSION}/ + cd ..; tar --exclude .svn --exclude "debian/*" $NONDFSG -cvhzf webcit-${WEBCIT_VERSION}.tar.gz --transform "s/^webcit/webcit-${WEBCIT_VERSION}/" webcit/ ;; i18n) ./webcit -G `pwd`/i18n_templatelist.c
[Citadel Development] Fw: [PATCH] Fake the old version number for the paths inside the tar files
(I wish drafts folder worked as a drafts folder in webcit) If this looks good, we probably need the same thing for the other buildpackages / --- forwarded message --- / > Wed Sep 01 2010 8:45:15 am EDT EDT from "Sam Liddicott" > Subject: [PATCH] Fake the old version number for the >paths inside the tar files > > > Helps for: > ./buildpackes debian src > and > ./buildpackages sourcedist > --- > webcit/buildpackages | 13 ++--- > 1 files changed, 6 insertions(+), 7 deletions(-) > > > > diff --git a/webcit/buildpackages b/webcit/buildpackages index 8a066da..23111fc 100755 --- a/webcit/buildpackages +++ b/webcit/buildpackages @@ -11,7 +11,7 @@ ACTUAL_DIR=`pwd` rm -rf debian/citadel-webcit debian/tmp/ -if echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then +if true || echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then echo "directory ($ACTUAL_DIR) naming scheme seems right. nothing done." else done=false @@ -42,18 +42,17 @@ case $1 in echo "Upstream Version higher than local." fi if test "$2" == "src"; then - cd .. rm -rf tmp - mkdir tmp - cp -rL webcit-$WEBCIT_VERSION tmp - cd tmp/webcit-$WEBCIT_VERSION + mkdir -p ../tmp/webcit-$WEBCIT_VERSION + cp -rL . ../tmp/webcit-$WEBCIT_VERSION + cd ../tmp/webcit-$WEBCIT_VERSION rm -rf `find -name .svn ` svn*tmp* build-stamp configure-stamp *~ config.guess config.log config.status autom4te.cache Makefile find -type f -exec chmod a-x {} \; chmod a+x configure debian/rules po/create-pot.sh mk_module_init.sh cd .. tar -chzf webcit_${WEBCIT_VERSION}.orig.tar.gz webcit-${WEBCIT_VERSION}/ --exclude "debian/*" pwd - cd webcit-${WEBCIT_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd webcit-$WEBCIT_VERSION && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -62,7 +61,7 @@ case $1 in if test "$2" == "dfsg"; then NONDFSG=-"-exclude static/openid-small.gif" fi - cd ..; tar --exclude .svn --exclude "debian/*" $NONDFSG -cvhzf webcit-${WEBCIT_VERSION}.tar.gz webcit-${WEBCIT_VERSION}/ + cd ..; tar --exclude .svn --exclude "debian/*" $NONDFSG -cvhzf webcit-${WEBCIT_VERSION}.tar.gz --transform "s/^webcit/webcit-${WEBCIT_VERSION}/" webcit/ ;; i18n) ./webcit -G `pwd`/i18n_templatelist.c diff --git a/webcit/buildpackages b/webcit/buildpackages index 8a066da..23111fc 100755 --- a/webcit/buildpackages +++ b/webcit/buildpackages @@ -11,7 +11,7 @@ ACTUAL_DIR=`pwd` rm -rf debian/citadel-webcit debian/tmp/ -if echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then +if true || echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then echo "directory ($ACTUAL_DIR) naming scheme seems right. nothing done." else done=false @@ -42,18 +42,17 @@ case $1 in echo "Upstream Version higher than local." fi if test "$2" == "src"; then - cd .. rm -rf tmp - mkdir tmp - cp -rL webcit-$WEBCIT_VERSION tmp - cd tmp/webcit-$WEBCIT_VERSION + mkdir -p ../tmp/webcit-$WEBCIT_VERSION + cp -rL . ../tmp/webcit-$WEBCIT_VERSION + cd ../tmp/webcit-$WEBCIT_VERSION rm -rf `find -name .svn ` svn*tmp* build-stamp configure-stamp *~ config.guess config.log config.status autom4te.cache Makefile find -type f -exec chmod a-x {} \; chmod a+x configure debian/rules po/create-pot.sh mk_module_init.sh cd .. tar -chzf webcit_${WEBCIT_VERSION}.orig.tar.gz webcit-${WEBCIT_VERSION}/ --exclude "debian/*" pwd - cd webcit-${WEBCIT_VERSION}; debuild -S -sa -kw.goesg...@outgesourced.org + cd webcit-$WEBCIT_VERSION && debuild -S -sa -kw.goesg...@outgesourced.org else fakeroot dpkg-buildpackage fi @@ -62,7 +61,7 @@ case $1 in if test "$2" == "dfsg"; then NONDFSG=-"-exclude static/openid-small.gif" fi - cd ..; tar --exclude .svn --exclude "debian/*" $NONDFSG -cvhzf webcit-${WEBCIT_VERSION}.tar.gz webcit-${WEBCIT_VERSION}/ + cd ..; tar --exclude .svn --exclude "debian/*" $NONDFSG -cvhzf webcit-${WEBCIT_VERSION}.tar.gz --transform "s/^webcit/webcit-${WEBCIT_VERSION}/" webcit/ ;; i18n) ./webcit -G `pwd`/i18n_templatelist.c diff --git a/webcit/buildpackages b/webcit/buildpackages index 8a066da..23111fc 100755 --- a/webcit/buildpackages +++ b/webcit/buildpackages @@ -11,7 +11,7 @@ ACTUAL_DIR=`pwd` rm -rf debian/citadel-webcit debian/tmp/ -if echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then +if true || echo "$ACTUAL_DIR" |grep -q "$WEBCIT_VERSION"; then echo "directory ($ACTUAL_DIR) naming scheme seems right. nothing done." else done=false @@ -42,18 +42,17 @@ case $1 in echo "Upstream Version higher than local." fi if test "$2" == "src"; then - cd .. rm -rf tmp - mkdir tmp - cp -rL webcit-$WEBCIT_VERSION tmp - cd tmp/webcit-$WEBCIT_VERSION + mkdir -p ../tmp/webcit-$WEBCIT_VERSION + cp -rL . ../tmp/webcit-$WEBCIT_VERSION + cd ../tmp/webcit-$WEBCIT_VERSION
[Citadel Development] Re: Fw: [PATCH] Fake the old version number for the paths inside the tar files
Ignore that patch; I have one that fixes all 3 projects - otherwise they fail to build properly with symlink loops and the like
[Citadel Development] What happened to c_port_number?
c_port_number is used in ./server_main.c to listen on, but never set anywhere. ./server_main.c listens on port 0 when it runs this line: CtdlRegisterServiceHook(config.c_port_number,So hows that ever supposed to work? It's been suggested that I re-run "setup" but it doesn't seem to know any of my old answers, so I won't let it complete.
[Citadel Development] Blog rooms
AJC, I note that you have just added VIEW_BLOG = 9, /* Blog view (not yet implemented) */but I remind you that 9 was used for VIEW_DRAFTS before it was disabled, and many of my uses already have such rooms. I'm just doing fixes for drafts anyway (so I noticed this) - please could you use 10 for VIEW_BLOG? Thanks Sam
[Citadel Development] Re: What happened to c_port_number?
Sat Sep 04 2010 8:10:35 am EDT EDT from samjam @ Uncensored Subject: What happened to c_port_number? c_port_number is used in ./server_main.c to listen on, but never set anywhere. ./server_main.c listens on port 0 when it runs this line: CtdlRegisterServiceHook(config.c_port_number,So hows that ever supposed to work? It's been suggested that I re-run "setup" but it doesn't seem to know any of my old answers, so I won't let it complete. I'm also still getting: file_funambol_msg : /usr/share/citadel-server/funambol_newmail_soap.xml *** glibc detected *** ./citserver: double free or corruption (out): 0x7fffeb8039c0 *** If I don't override the address from the config with a literal "0.0.0.0" - perhaps related to faiing to show general config with webcit Sam
[Citadel Development] Re: What happened to c_port_number?
Sat Sep 04 2010 8:50:05 am EDT EDT from samjam @ Uncensored Subject: Re: What happened to c_port_number? Sat Sep 04 2010 8:39:27 am EDT EDT from samjam @ Uncensored Subject: Re: What happened to c_port_number? And my server IP address (as shown in citadel aide sysconfig general) suddenly became 504 again Port number and server ip address are fighting over the same config slot somewhere. Sam I risked it and re-ran setup. It didn't trash my config despite not knowing the original answers, and now things seem to be back to normal. Nope, still broken - re-installing the (new) debs, breaks it again and knocks the config back again
[Citadel Development] Re: What happened to c_port_number?
Sat Sep 04 2010 8:54:39 am EDT EDT from samjam @ Uncensored Subject: Re: What happened to c_port_number? Nope, still broken - re-installing the (new) debs, breaks it again and knocks the config back again setup -q is the culprit, after "setup" my ip address is 0.0.0.0, after setup -q is has gone again
[Citadel Development] Re: What happened to c_port_number?
Sat Sep 04 2010 8:29:13 am EDT EDT from samjam @ Uncensored Subject: Re: What happened to c_port_number? Sat Sep 04 2010 8:10:35 am EDT EDT from samjam @ Uncensored Subject: What happened to c_port_number? c_port_number is used in ./server_main.c to listen on, but never set anywhere. ./server_main.c listens on port 0 when it runs this line: CtdlRegisterServiceHook(config.c_port_number,So hows that ever supposed to work? It's been suggested that I re-run "setup" but it doesn't seem to know any of my old answers, so I won't let it complete. I'm also still getting: file_funambol_msg : /usr/share/citadel-server/funambol_newmail_soap.xml *** glibc detected *** ./citserver: double free or corruption (out): 0x7fffeb8039c0 *** If I don't override the address from the config with a literal "0.0.0.0" - perhaps related to faiing to show general config with webcit Sam And my server IP address (as shown in citadel aide sysconfig general) suddenly became 504 again Port number and server ip address are fighting over the same config slot somewhere. Sam
[Citadel Development] Re: macro "strncmp" requires 3 arguments, but only 2 given
Wed Sep 01 2010 6:14:03 am EDT EDT from samjam @ Uncensored Subject: Re: macro "strncmp" requires 3 arguments, but only 2 given Wed Sep 01 2010 6:06:48 am EDT EDT from dothebart @ Uncensored Subject: Re: macro "strncmp" requires 3 arguments, but only 2 given HKEY is a macro that does a, sizeof(a) - 1 so it actualy has 3 parameters. Maybe for some reason that macro isn't visible to your compiler there? that strncmp actualy wants to check for the first two chars. To be clear to my other reply, on my system strcmp and strncmp are macros and so HKEY won't work to return more than one parameter You can do the HKEY trick on vararg macros: cat < x.c #define strncmp(a,b,c) [a][b][c]#define _strncmp(...) strcmp(__VA_ARGS__)#define HKEY(a) a, (sizeof(a)-1)_strncmp("something", HKEY("__"));x.c gcc -E x.c # 1 "x.c"# 1 ""# 1 ""# 1 "x.c"["something"]["__"][(sizeof("__")-1)]; But on my system strncmp isn't a vararg macro.
[Citadel Development] Re: Unusual SSL behavior, likely bug
Wed Sep 01 2010 5:39:34 am EDT EDT from dothebart @ Uncensored Subject: Re: Unusual SSL behavior, likely bug Scanios, can you re-test with current git trunk? TIA. Mo Aug 30 2010 17:34:25 EDT von dothebart @ Uncensored Betreff: Re: Unusual SSL behavior, likely bug ok, since our SVN is unavailable, and our Git is still maturizing, this is the fix for our imaps-blob-uploading issue. So Aug 29 2010 18:32:54 EDT von dothebart @ Uncensored Betreff: Re: Unusual SSL behavior, likely bug So Aug 29 2010 17:19:14 EDT von dothebart @ Uncensored Betreff: Re: Unusual SSL behavior, likely bug hm, ok, i'd say its the line between header and body which is breaking our neck here. could you please reassure, that the last line of those messages being written to citserver is the last line of the email-header? for example .4 X-Evolution-Source: imap://some...@somewhereplace.com/ or in .3: Content-Transfer-Encoding: 7bit ok, forget about it. its the ssl-blob-reader; need to have a closer look at it tomorow. I am now (for the first time in a while) able to save messages to drafts without an error message - thanks Sam /* $Id$ * * Copyright (c) 1987-2009 by the citadel.org team * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include #include #include #include #include "sysdep.h" #ifdef HAVE_OPENSSL #include #include #include #endif #if TIME_WITH_SYS_TIME # include # include #else # if HAVE_SYS_TIME_H # include # else # include # endif #endif #ifdef HAVE_PTHREAD_H #include #endif #ifdef HAVE_SYS_SELECT_H #include #endif #include #include #include "server.h" #include "serv_crypto.h" #include "sysdep_decls.h" #include "citadel.h" #include "config.h" #include "ctdl_module.h" /* TODO: should we use the standard module init stuff to start this? */ /* TODO: should we register an event handler to call destruct_ssl? */ #ifdef HAVE_OPENSSL SSL_CTX *ssl_ctx; /* SSL context */ pthread_mutex_t **SSLCritters; /* Things needing locking */ static unsigned long id_callback(void) { return (unsigned long) pthread_self(); } void destruct_ssl(void) { int a; for (a = 0; a < CRYPTO_num_locks(); a++) free(SSLCritters[a]); free (SSLCritters); } void init_ssl(void) { SSL_METHOD *ssl_method; DH *dh; RSA *rsa=NULL; X509_REQ *req = NULL; X509 *cer = NULL; EVP_PKEY *pk = NULL; EVP_PKEY *req_pkey = NULL; X509_NAME *name = NULL; FILE *fp; if (!access(EGD_POOL, F_OK)) RAND_egd(EGD_POOL); if (!RAND_status()) { CtdlLogPrintf(CTDL_CRIT, "PRNG not adequately seeded, won't do SSL/TLS\n"); return; } SSLCritters = malloc(CRYPTO_num_locks() * sizeof(pthread_mutex_t *)); if (!SSLCritters) { CtdlLogPrintf(CTDL_EMERG, "citserver: can't allocate memory!!\n"); /* Nothing's been initialized, just die */ exit(1); } else { int a; for (a = 0; a < CRYPTO_num_locks(); a++) { SSLCritters[a] = malloc(sizeof(pthread_mutex_t)); if (!SSLCritters[a]) { CtdlLogPrintf(CTDL_EMERG, "citserver: can't allocate memory!!\n"); /* Nothing's been initialized, just die */ exit(1); } pthread_mutex_init(SSLCritters[a], NULL); } } /* * Initialize SSL transport layer */ SSL_library_init(); SSL_load_error_strings(); ssl_method = SSLv23_server_method(); if (!(ssl_ctx = SSL_CTX_new(ssl_method))) { CtdlLogPrintf(CTDL_CRIT, "SSL_CTX_new failed: %s\n", ERR_reason_error_string(ERR_get_error())); return; } if (!(SSL_CTX_set_cipher_list(ssl_ctx, CIT_CIPHERS))) { CtdlLogPrintf(CTDL_CRIT, "SSL: No ciphers available\n"); SSL_CTX_free(ssl_ctx); ssl_ctx = NULL; return; } #if 0 #if SSLEAY_VERSION_NUMBER >= 0x00906000L SSL_CTX_set_mode(ssl_ctx, SSL_CTX_get_mode(ssl_ctx) | SSL_MODE_AUTO_RETRY); #endif #endif CRYPTO_set_locking_callback(ssl_lock); CRYPTO_set_id_callback(id_callback); /* Load DH parameters into the context */ dh = DH_new(); if (!dh) { CtdlLogPrintf(CTDL_CRIT, "init_ssl() can't allocate a DH object: %s\n", ERR_reason_error_string(ERR_get_error())); SSL_CTX_free(ssl_ctx); ssl_ctx = NULL; return; } if (!(BN_hex2bn(&(dh->p), DH_P))) { CtdlLogPrintf(CTDL_CRIT, "init_ssl() can't assign DH_P: %s\n", ERR_reason_error_string(ERR_get_error())); SSL_CTX_free(ssl_ctx); ssl_ctx = NULL; return; } if (!(BN_hex2bn(&(dh->g), DH_G))) { Ctd
[Citadel Development] Re:
Sat Aug 28 2010 10:06:18 am EDT EDT from dothebart @ Uncensored 15:10 CIA-37: citadel: dothebart * r8892 citadel/ (13 files in 8 dirs): * do typedef the visit struct, remove all those 'struct' statements from all over the source15:11 CIA-37: citadel: dothebart * r8893 citadel/user_ops.c: * fix GTSN not to cut seen stats at 1024 chars (somehow no svn commit mail?) sam, could you please try whether that fixes your troubles? That's great! Absolutely great! I can now use webcit to view mailboxes with thousands of messages. Also, lately I've notice everything much faster! I don't know if my vhoster has moved me to better hardware or if citadel has just got lots better. Sam
[Citadel Development] Wiki still doesn't work
I'm using git master (head) and create a new private (mailbox) wiki room, click "edit this page", post my edit and still get the message "There is no page called 'home' here" Are there any trivks to fully enable the wiki?
[Citadel Development] ./buildpackages breaks git
The command ./buildpackages debian will rename the current directory and create a symlink to the old one. This breaks git; "it knows", and some commands like "git blame" then think the files aren't checked in yet (although git diff works). I always thought a build script renaming managed directories was dodgy anyway... - does it HAVE to do that?
[Citadel Development] Re: Git?
Mon Aug 30 2010 1:58:38 pm EDT EDT from IGnatius T Foobar @ Uncensored Subject: Re: Git? Ok, we're switching to git. I remain ambivalent about the subject, but since it is in high demand I will go with the flow here. My needs are simple ... even CVS worked just fine for me. Our source code repository will be offline until the conversion is complete. thank-you thank-you thank-you Sam
[Citadel Development] Re:
Sat Aug 28 2010 10:06:18 am EDT EDT from dothebart @ Uncensored 15:10 CIA-37: citadel: dothebart * r8892 citadel/ (13 files in 8 dirs): * do typedef the visit struct, remove all those 'struct' statements from all over the source15:11 CIA-37: citadel: dothebart * r8893 citadel/user_ops.c: * fix GTSN not to cut seen stats at 1024 chars (somehow no svn commit mail?) sam, could you please try whether that fixes your troubles? Sure (as soon as git comes online). Thanks for looking at that for me. Sam
[Citadel Development] FIX: Re: BUG: Headers corruption during header folding
Fri Aug 27 2010 6:35:44 am EDT EDT from dothebart @ Uncensored Subject: FIX: Re: BUG: Headers corruption during header folding I don't think so; it was introduced very recently - r8886 (git blame helps here) ah, to new for my working copy. 2 lines above where I was looking at ;-) The commit message of that buggy commit said that it had been backported to the latest release. That coult be bad news. So I'm trying to draw attention to the fact that it might not just be a trunk bug.
[Citadel Development] Re: Wiki mode yet?
Fri Aug 27 2010 8:41:46 am EDT EDT from dothebart @ Uncensored Subject: Re: Wiki mode yet? Fr Aug 27 2010 08:33:51 EDT von samjam @ Uncensored Betreff: Wiki mode yet? Should wiki mode be working yet? (I'm running svn trunk head) Yes, it should be working. There may be (but hopefuly aren't ;-) issues with creation, or the dark blue bar above with the icons letting you browse history jump back to the main page from sub-pages. I create a new room with default wiki view, and always it shows as: There is no page called 'home' here.Select the 'Edit this page' link in the room banner if you would like to create this page I click "Edit this Page" and put in some text and click post message but I am back to "There is no page called 'home' here" What do I do wrong? (When the wiki room is a personal mail folder, it doesn't even post a message that IMAP can even see)
[Citadel Development] NNTP?
In 2006 there was discussion on NNTP support in citadel, as if it worked, but there is no NNTP now it seems. Whats the current status and view of NNTP support? Sam
[Citadel Development] Implicit Rooms for Webcit
I know the history of citadel such that it makes historical sense for the current room to not be part of the webcit URL. But it doesn't make sense from a web point of view; I really think the current room should be part of the URL. It also causes trouble for users who have more than one window open, and don't realise that when they change room in one, it changes room in the other. It also makes it hard to send URL's to postings in a room - or even URL's to things like the download directories in a specific room. Can the principle be accepted that for web sites it makes sense to have the room as part of the URL and that more than one room could be open at once? I'm fine if internally, the users appear to be flip-flopping rooms, although maybe that can be solved by allowing users to have sessions associated with multiple rooms and having cunning javascript on-close handlers. Sam
[Citadel Development] Re: (no subject)
* IGnatius T Foobar wrote, On 06/10/09 15:25: Why does "wiki" have to refer to "byzantine markup syntax" ?? I think the nature of a wiki isn't that it requires its maintainers to learn wiki markup, but that it can be maintained and edited from within itself. I suppose we can solicit a few more opinions on this, but so far I'm not convinced. I'm with you on that. Sam
[Citadel Development] Re: evolution and namespaces
> Mon Jul 27 2009 10:16:50 am EDT EDT from IGnatius T Foobar @ Uncensored >Subject: Re: evolution and namespaces > >And it looks like they've already marked it as a dupe. > >Evolution's failure to behave properly with namespaces is a colossal >failure on their part. They should either map the namespaces properly or >not support them at all. > >Of course, this is Ximian (aka Novell) we're talking about here. Their >allegiance is to Microsoft; uncoincidentally, their support for Exchange is >very good. > > > > > > I think their exchange support is pretty rotten, RPC over HTTP support is non-existent. Looks like a patch came out in February, maybe it will hit Karmic Koala Sam
[Citadel Development] Citadel commit log: revision 7647
> Fri Jul 03 2009 1:27:48 am EDT EDT from "ajc" > Subject: Citadel commit log: revision 7647 > > * Temporarily disabled the 'Drafts' functions. I like the idea, but it >doesn't work, and I'd like to shuffle some things around. But in the >meantime, we need to get 7.60 out the door. The code is still there but the >buttons are commented out, except for the VIEW_DRAFTS view, which I removed >completely. Since the 'Drafts' room will end up being either a mailbox view >or a BBS view, chosen by the user, we should implement some other way of >determining whether we're in the Drafts room, and only offer the 'Edit' >button in that case. Currently, when I click the 'Edit' button, it opens a >message entry screen containing an error about a missing template. > > The patches I posted were based on the folder name being the drafts folder, but dothebart prefferred it to be based on view type. I agree that "edit" is confusing in most vires, but most mailers to provide the option to edit a message as a new message, so I'm also not entirely comfortable removing it. Sam
[Citadel Development] (no subject)
> Thu Jun 18 2009 11:34:35 pm EDT EDT from asdfg @ Uncensored > >I've been noticing on the text client a character sequence shows up in >many messages including in the previous message before the word "Weird". It >looks like IBM characters hex C2 A0. > > >thanks, >asdfg > > > > > > I've noticed on my Nokia E51 than many message have garbage characters all over the place; like: = > 4 etc, all "regular" characters but appearing where they should not. For example; this message from IG: > > >This is the third time I've made that fix. Let's try not to brea4 it again or this one fromdothebart > > >there are several reasons. readon one: the server module is based on an >older code that was arou7d in advance for a while. > >reason two: we use expat for xml parsing. if you have a look at that, 2t >uses it's own lib for xml parsing it's as if a character in the string is being over-written with a 1 byte count because the characters all seem to be ascii codes <64 It doesn't affect webcit or thunderbird. Sam
[Citadel Development] Citadel commit log: revision 7581
> Sun Jun 14 2009 5:09:43 pm EDT EDT from dothebart @ Uncensored >Subject: Citadel commit log: revision 7581 > > > >sam, I think its better done that way. if there are any objections to using >force_room, raise your voice. > > raise raise the draft saved isn't always a mail message but may be a room message. I still needed to add the code to extract the X-Citadel-Room header and goto that room instead. I don't think the template should force_room because it has no idea which room to force. > > >And I don't know whether it might be a better solution to just use another >template for loading a draft... lets see how we can sort out that the best. > Aye, lets see how it goes; and I'm not sure if the template can do it all; we still also will need to recover any attachents too. I'm just "git svn rebase" ing to try your changes and see where to go from there. Sam
[Citadel Development] Allow to post messgahe in Drafts in mailbox view
> Sun Jun 14 2009 2:14:12 pm EDT EDT from dothebart @ Uncensored >Subject: Allow to post messgahe in Drafts in mailbox view > > >> Sa Jun 13 2009 09:01:57 EDT von samjam @ Uncensored Betreff: Allow to >>post messgahe in Drafts in mailbox view >> >> ... > > >I added a new room-view for that. I think its better that way, less >stringcompares, and other opportunities, like rendering it different. > > That sounds good > > >We probably should make roomtypes VIEW_DRAFTS not send out mails even if >messages aren't specified (the same way mail rooms forces recipients..) Did you mean "not send out emails even if recipients are specified" ? > > >I further want to have something in the preferences like a dropdown, where >you can choose between drafts. This should be the third case in 'signature >none/yes + input area / Messagetemplate + dropdownlist Alas, I don't follow this. Sam
[Citadel Development] Citadel commit log: revision 7575
> Sun Jun 14 2009 2:00:41 pm EDT EDT from dothebart @ Uncensored >Subject: Citadel commit log: revision 7575 > > > > >> > > >Sam, when fixing bugs that also should be fixed in other branches, could you >please commit these separately? > > > When I did my git-svn I only got the trunk, not the whole svn tree so I don't have the other branches by default, but I'll see if I can work out how to make it work. Sam
[Citadel Development] Allow to post messgahe in Drafts in mailbox view
Dothebart, you probably want this patch: http://repo.or.cz/w/citadel.git?a=commit;h=67b387e587b4acdf04542acdeb03695bc0b 1c216 Which allows one to post messages into Drafts without recipients, regardless of view mode or anything else. The second and third patches here may be of interest: http://repo.or.cz/w/citadel.git?a=shortlog;h=refs/heads/sam The third you have already seen, but I think not accepted The second one is a first attempt at resume-from-drafts. It works for email recipients but not room posts It is deficient in that: * It does not recover X-Citadel-Room yet * It loses in-reply-to and references * It doesn't extract recipients properly The templates use &recp=&cc= to extract the recipients - and this works for Drafts messages save from IMAP, but Drafts messages saved from webcit don't have the and RCPT fields, because they weren't provided when the message was saved, for fear that citadel would deliver the message (and it would have!) So... we can either edit citadel so it has a save-to-drafts command (or variant of ENT0 to mean don't actually email, but room-post only) or I have to parse the RFC headers from the message to get To: CC: BCC: in the same way I do for X-Citadel-Room. If I do that, then I shall probably use svput* to make these values available to the template and that will save me using GET parameters
[Citadel Development] Re: Citadel commit log: revision 7566
* dothebart wrote, On 12/06/09 13:57: > > > > Fri Jun 12 2009 14:25:20 CEST from samjam @ Uncensored Subject: > Citadel commit log: revision 7566 > > > > Fri Jun 12 2009 05:11:08 AM EDT from dothebart @ Uncensored > Subject: Citadel commit log: revision 7566 > > Sam, some hints here. > > [deleted] > > thanks for the tips > > I didn't test the drafts stuff so far, please re-check whether > my additions did the job, and whether imap clients use the > drafts folder properly. TIA. > > > I think you got the sense of one test backwards, with == 2 instead > of != 2 > > However as mentioned I needed a better mechanism to tell if it was > a room-post or an email being saved, instead of checking if the > user had filled in an address . > > This patch (on top of the one you applied) fixes both problems, > I've tested and am running it on my server. IMAP clients can pick > up messages from Drafts. > > X-Citadel-Room is always included if a recipient is not required, > otherwise it is not included and recipients (if any) are included. > > Sam > > Oh, yes you're right. > > Pro'lly we should first discuss on which conditions you want to offer > the saving to a draft. > > There is the roomflag subject required; but this may be here in public > rooms (with mailingilst attached, etc.) but I think thats reason > enough to show a save as draft button. > Well I figure any compose should permit save-as-drafts, it's not the room type that makes the difference but how important what you are typing is, if you get interrupted. I wonder if we should use EUID for save-to-drafts, so we don't end up with lots of copies of the same message in drafts. I guess we also need to delete-from-drafts when the message is sent. > > > We also need a way to start composing a mail from the drafts. > > Probably adding a flag to the roomtype other than mail so you can be > presented a list of drafts to start composing the mail... > Sounds good, is there a search filter option on the X-Citadel-Room header? Maybe the same code can be used for templates, too. > > pullquote should be the way to go here, but maybe with some still to > find out modifications needed. > I don't know what that means. Sam