citadel.git
2 years agoRelease version 943 generated by do-release.sh v943
Art Cancro [Thu, 30 Dec 2021 17:38:21 +0000 (12:38 -0500)]
Release version 943 generated by do-release.sh

2 years agoList-Unsubscribe: header is now being generated and is correct!
Art Cancro [Thu, 30 Dec 2021 17:38:11 +0000 (12:38 -0500)]
List-Unsubscribe: header is now being generated and is correct!

2 years agomore idle style-cleanup work
Art Cancro [Thu, 30 Dec 2021 17:24:53 +0000 (12:24 -0500)]
more idle style-cleanup work

2 years agolistsub.c: style cleanup
Art Cancro [Thu, 30 Dec 2021 17:13:13 +0000 (12:13 -0500)]
listsub.c: style cleanup

2 years agoExtend the source_room field all the way into the SMTP delivery loop.
Art Cancro [Wed, 29 Dec 2021 22:53:59 +0000 (17:53 -0500)]
Extend the source_room field all the way into the SMTP delivery loop.
Tested adding SMTP headers directly into the outgoing message at the
moment of transmission -- it worked really well.  Temporarily adding
an "X-Citadel-Room:" header as a placeholder, but in the next couple
of commits we will make it a "List-Unsubscribe:" header.

2 years agoWhen delivering mailing list messages, populate the sending_room
Art Cancro [Wed, 29 Dec 2021 19:47:34 +0000 (14:47 -0500)]
When delivering mailing list messages, populate the sending_room
field of the recipient list.  This in turn populates the source_room
directive in the SMTP delivery list, which we will use soon.

2 years agoFucking hell. We actually HAVE a "Allow non-subscribers to mail to
Art Cancro [Wed, 29 Dec 2021 16:28:48 +0000 (11:28 -0500)]
Fucking hell.  We actually HAVE a "Allow non-subscribers to mail to
this room" flag.  I was confused by the poor wording of this option
in the text client, and screwed up the server's behavior when I
rewrote the mailing list server.  It's fixed now, and once again
has the correct behavior: anyone can email a room when the flag is
set, and subscribers can email the room regardless of the flag.

2 years agoWebCit-NG:
Art Cancro [Tue, 28 Dec 2021 21:31:53 +0000 (16:31 -0500)]
WebCit-NG:
* Force webcit to be on the same host as citserver
* Remove local keys directory, use the ones from citserver directory
* Auto re-bind key and cert if either one changes
* Support .well-known directory for static content, supporting HTTP-01

2 years agosetup was still in the makefile , oooops
Art Cancro [Mon, 27 Dec 2021 22:49:01 +0000 (17:49 -0500)]
setup was still in the makefile , oooops

2 years agoWe have to push the changes *and* the tags
Art Cancro [Mon, 27 Dec 2021 22:43:02 +0000 (17:43 -0500)]
We have to push the changes *and* the tags

2 years agoRelease version 942 generated by do-release.sh
Art Cancro [Mon, 27 Dec 2021 22:40:40 +0000 (17:40 -0500)]
Release version 942 generated by do-release.sh

2 years agoCitadel Server and WebCit (classic) now both reload the key and cert if the modificat...
Art Cancro [Mon, 27 Dec 2021 22:30:09 +0000 (17:30 -0500)]
Citadel Server and WebCit (classic) now both reload the key and cert if the modification time of either one changes.  This should allow us to replace or renew the certificate during normal operation without restarting.

2 years agoNot sure what the point of that second call to SSL_accept() was for, but it was alway...
Art Cancro [Mon, 27 Dec 2021 20:51:58 +0000 (15:51 -0500)]
Not sure what the point of that second call to SSL_accept() was for, but it was always failing, and removing it seems to be fine

2 years agoBIG CHANGES: PAY ATTENTION
Art Cancro [Mon, 27 Dec 2021 20:49:38 +0000 (15:49 -0500)]
BIG CHANGES: PAY ATTENTION
1. WebCit must now run on the same host as Citadel Server, which is how everyone runs it anyway.
2. WebCit now uses the SSL key and Certificate from the Citadel Server directory.

2 years agoRemoved the unused 'selenium' directory
Art Cancro [Mon, 27 Dec 2021 19:31:57 +0000 (14:31 -0500)]
Removed the unused 'selenium' directory

2 years agoRemoved the obsolete 'setup' utility. It is not used by any currently supported...
Art Cancro [Mon, 27 Dec 2021 19:27:08 +0000 (14:27 -0500)]
Removed the obsolete 'setup' utility.  It is not used by any currently supported installation method.
Removed the unfinished 'setup wizard'.
Removed the unused 'tests' directory.

2 years agoFinally removed the cached/hashed static directory stuff. This should put us into...
Art Cancro [Mon, 27 Dec 2021 16:09:11 +0000 (11:09 -0500)]
Finally removed the cached/hashed static directory stuff.  This should put us into a position to get the http-01 challenge working.

2 years agoRemoved vestiges of the epic editor
Art Cancro [Sun, 26 Dec 2021 15:54:02 +0000 (10:54 -0500)]
Removed vestiges of the epic editor

2 years agoRemoved the epic editor from the tree. Why was it even there? It wasn't being used.
Art Cancro [Sun, 26 Dec 2021 15:49:33 +0000 (10:49 -0500)]
Removed the epic editor from the tree.  Why was it even there?  It wasn't being used.

2 years agoI need to make the static web server just a static web server. I hate working in...
Art Cancro [Wed, 22 Dec 2021 21:46:50 +0000 (16:46 -0500)]
I need to make the static web server just a static web server.  I hate working in webcit classic because it's such a tangled mess.  The present commit just cleans up some old cruft; there is no actual change in functionality yet.  The next couple of commits will attempt to only cache the templates while using a regular file open for everything else.  There's no need to cache everything else because the operating system can do it better than we can.  KISS principle.  Coming soon to a webcit near you.

2 years agoCleanup of crypto.c in wc-classic to prepare for certificate updates during runtime
Art Cancro [Tue, 21 Dec 2021 18:45:33 +0000 (13:45 -0500)]
Cleanup of crypto.c in wc-classic to prepare for certificate updates during runtime

2 years agoRemoved more legacy cruft no longer needed when OpenSSL>=v1.1
Art Cancro [Tue, 21 Dec 2021 18:35:27 +0000 (13:35 -0500)]
Removed more legacy cruft no longer needed when OpenSSL>=v1.1

2 years agoOpenSSL no longer requires thread locking callbacks. REMOVED FROM WEBCIT-NG
Art Cancro [Mon, 20 Dec 2021 20:50:00 +0000 (15:50 -0500)]
OpenSSL no longer requires thread locking callbacks.  REMOVED FROM WEBCIT-NG

2 years agoOpenSSL no longer requires thread locking callbacks. REMOVED FROM WEBCIT CLASSIC
Art Cancro [Mon, 20 Dec 2021 20:47:01 +0000 (15:47 -0500)]
OpenSSL no longer requires thread locking callbacks.  REMOVED FROM WEBCIT CLASSIC

2 years agoOpenSSL no longer requires thread locking callbacks. REMOVED FROM CITSERVER
Art Cancro [Mon, 20 Dec 2021 20:42:51 +0000 (15:42 -0500)]
OpenSSL no longer requires thread locking callbacks.  REMOVED FROM CITSERVER

2 years agoRemoved SSL cleanup function. Let the operating system do this for us.
Art Cancro [Sun, 19 Dec 2021 22:39:01 +0000 (17:39 -0500)]
Removed SSL cleanup function.  Let the operating system do this for us.

2 years agoserv_pop3.c: updated to latest style guidelines
Art Cancro [Sun, 19 Dec 2021 21:58:01 +0000 (16:58 -0500)]
serv_pop3.c: updated to latest style guidelines

2 years agoNew functions to activate and deactivate the Loading... modal
Art Cancro [Wed, 15 Dec 2021 05:03:15 +0000 (00:03 -0500)]
New functions to activate and deactivate the Loading... modal

2 years agoIf div names are random strings, they don't need to start with "ctdl_"
Art Cancro [Wed, 15 Dec 2021 00:31:21 +0000 (19:31 -0500)]
If div names are random strings, they don't need to start with "ctdl_"

2 years agoSlowly becoming a good JavaScript developer. :) Don't pass around div names when...
Art Cancro [Wed, 15 Dec 2021 00:14:51 +0000 (19:14 -0500)]
Slowly becoming a good JavaScript developer.  :)    Don't pass around div names when we can actually pass around references to the divs themselves.  This should shave off a few cycles because we don't have to keep calling document.getElementById()

2 years agoscroll_to works again
Art Cancro [Tue, 14 Dec 2021 23:23:39 +0000 (18:23 -0500)]
scroll_to works again

2 years agoAppend messages to the DOM tree as div elements instead of as text. This preserves...
Art Cancro [Tue, 14 Dec 2021 22:48:31 +0000 (17:48 -0500)]
Append messages to the DOM tree as div elements instead of as text.  This preserves the document tree's integrity when a malformed message arrives.

2 years agoMajor change to the javascript forum view. We now wait for all messages to be loaded...
Art Cancro [Tue, 14 Dec 2021 21:17:53 +0000 (16:17 -0500)]
Major change to the javascript forum view.  We now wait for all messages to be loaded before rendering them all in one shot.  Rendering works, opening the reply box works, saving a message works, but we still have to figure out how to render a message in the location where it was entered.  Or maybe that's not a good idea?  Also the scroll_to semantics are broken but we are in a better position to redo this in a simpler way.

2 years agoopen the reply box with .append() instead of tweaking outerHTML
Art Cancro [Mon, 13 Dec 2021 20:18:54 +0000 (15:18 -0500)]
open the reply box with .append() instead of tweaking outerHTML

2 years agonew div name
Art Cancro [Mon, 13 Dec 2021 19:25:48 +0000 (14:25 -0500)]
new div name

2 years agobeautiful
Art Cancro [Mon, 13 Dec 2021 01:10:35 +0000 (20:10 -0500)]
beautiful

2 years agodo-release.sh now generates more meaningful descriptions of tags
Art Cancro [Mon, 13 Dec 2021 00:40:44 +0000 (19:40 -0500)]
do-release.sh now generates more meaningful descriptions of tags

2 years agoHow about that ... we're now correctly handling the reply-references and carrying...
Art Cancro [Sat, 11 Dec 2021 02:11:13 +0000 (21:11 -0500)]
How about that ... we're now correctly handling the reply-references and carrying over the subject, and Wes is on the way here with a burger for me.

2 years agoIt's Friday night, Wesley is out, Sammi is not hungry, and Miss Melissa is asleep...
Art Cancro [Sat, 11 Dec 2021 01:19:42 +0000 (20:19 -0500)]
It's Friday night, Wesley is out, Sammi is not hungry, and Miss Melissa is asleep on the couch.  Instead of making dinner I added URL parameter parsing to the web server.  I didn't think we'd need it but I want to be able to transmit some parameters to ENT0 and this seems like a reasonable way to do it.

2 years agoresponse headers now use an array instead of a linked list
Art Cancro [Sat, 11 Dec 2021 00:04:13 +0000 (19:04 -0500)]
response headers now use an array instead of a linked list

2 years agohttp request headers are now an array instead of a linked list
Art Cancro [Fri, 10 Dec 2021 23:51:53 +0000 (18:51 -0500)]
http request headers are now an array instead of a linked list

2 years agoHTTP headers are shown in purple in the syslog
Art Cancro [Fri, 10 Dec 2021 23:31:36 +0000 (18:31 -0500)]
HTTP headers are shown in purple in the syslog

2 years agoChange all instances of "URI" to "URL" because that's more sensible
Art Cancro [Fri, 10 Dec 2021 23:22:28 +0000 (18:22 -0500)]
Change all instances of "URI" to "URL" because that's more sensible

2 years agoBegin gathering references and message IDs for replies
Art Cancro [Fri, 10 Dec 2021 23:15:43 +0000 (18:15 -0500)]
Begin gathering references and message IDs for replies

2 years agoDon't use \r\n with ctdl_printf() because it adds a \n on its own. Only add \r when...
Art Cancro [Fri, 10 Dec 2021 15:32:37 +0000 (10:32 -0500)]
Don't use \r\n with ctdl_printf() because it adds a \n on its own.  Only add \r when CRLF is needed.  Also some UI tweaks.

2 years agoDisplay an alert if we cannot connect to Citadel Server, instead of leaving the user...
Art Cancro [Thu, 9 Dec 2021 23:20:36 +0000 (18:20 -0500)]
Display an alert if we cannot connect to Citadel Server, instead of leaving the user sitting there bewildered.

2 years agoWhen delivering mail from a mailing list room, it is not enough to set the Reply...
Art Cancro [Thu, 9 Dec 2021 22:43:17 +0000 (17:43 -0500)]
When delivering mail from a mailing list room, it is not enough to set the Reply-To: header to the room's address; we must set the From: address too.  Doing otherwise annoys the recipient's DKIM validators.

2 years agoChanged the reject message to be identical to the one used by Mailman so we can steal...
Art Cancro [Mon, 29 Nov 2021 20:45:14 +0000 (15:45 -0500)]
Changed the reject message to be identical to the one used by Mailman so we can steal their translations later

2 years agoRelease version 941 generated by do-release.sh v941
Art Cancro [Mon, 29 Nov 2021 19:24:14 +0000 (14:24 -0500)]
Release version 941 generated by do-release.sh

2 years agoMail to a mailing list room must be from a subscriber (or a logged in user) otherwise...
Art Cancro [Mon, 29 Nov 2021 19:24:06 +0000 (14:24 -0500)]
Mail to a mailing list room must be from a subscriber (or a logged in user) otherwise incoming message is rejected.

2 years agoCleaned up another set of conditionals in the SMTP server.
Art Cancro [Mon, 29 Nov 2021 15:43:14 +0000 (10:43 -0500)]
Cleaned up another set of conditionals in the SMTP server.

2 years agoUpdated the comments in do-release.sh
Art Cancro [Mon, 29 Nov 2021 15:31:50 +0000 (10:31 -0500)]
Updated the comments in do-release.sh

2 years agoAnother win for short circuit evaluation
Art Cancro [Mon, 29 Nov 2021 00:47:20 +0000 (19:47 -0500)]
Another win for short circuit evaluation

2 years agoMade the RBL evaluation conditional cleaner by assuming short-circuit evaluation.
Art Cancro [Mon, 29 Nov 2021 00:25:55 +0000 (19:25 -0500)]
Made the RBL evaluation conditional cleaner by assuming short-circuit evaluation.

2 years agomake a note that we have to retain the reply message number
Art Cancro [Fri, 26 Nov 2021 05:54:14 +0000 (00:54 -0500)]
make a note that we have to retain the reply message number

2 years agoCapture the new message number from the etag of the post transaction
Art Cancro [Fri, 26 Nov 2021 05:51:12 +0000 (00:51 -0500)]
Capture the new message number from the etag of the post transaction

2 years agoLink entry in the editor now works. The example code at https://www.thatsoftwaredude...
Art Cancro [Fri, 26 Nov 2021 05:39:04 +0000 (00:39 -0500)]
Link entry in the editor now works.  The example code at https://thatsoftwaredude.com/content/8912/create-a-basic-text-editor-in-javascript was a bit naive because it assumes the URL is already known at the moment the user presses the Link button.  We open a box for URL entry, but when the user clicks into that box the original selection disappears.  So we have to save the selection range in hidden fields so we know where to replace the text.

2 years agobold, italic, and list buttons now work.
Art Cancro [Thu, 25 Nov 2021 20:36:03 +0000 (15:36 -0500)]
bold, italic, and list buttons now work.

2 years agosplit utility function out into a separate util.js
Art Cancro [Wed, 24 Nov 2021 20:05:42 +0000 (15:05 -0500)]
split utility function out into a separate util.js

2 years agoPlaced the bold/italic/list/link buttons in the editor. (They don't work yet.)
Art Cancro [Wed, 24 Nov 2021 17:54:24 +0000 (12:54 -0500)]
Placed the bold/italic/list/link buttons in the editor.  (They don't work yet.)

2 years agoPrettied up the qp encoder function a bit.
Art Cancro [Wed, 24 Nov 2021 16:51:51 +0000 (11:51 -0500)]
Prettied up the qp encoder function a bit.

2 years agoPost messages in quoted-printable instead of base64, just like WebCit Classic does...
Art Cancro [Wed, 24 Nov 2021 05:42:08 +0000 (00:42 -0500)]
Post messages in quoted-printable instead of base64, just like WebCit Classic does.  This avoids double-base64-encoding of inline images.

2 years agoSave messages as multipart/mixed with the HTML component in base64 encoding. We...
Art Cancro [Wed, 24 Nov 2021 05:27:13 +0000 (00:27 -0500)]
Save messages as multipart/mixed with the HTML component in base64 encoding.  We probably should rethink this because now we're double-base64-encoding inline images.

2 years agoRevert previous commit because it didn't work. Furthermore, remove the content-lengt...
Art Cancro [Wed, 24 Nov 2021 04:53:00 +0000 (23:53 -0500)]
Revert previous commit because it didn't work.  Furthermore, remove the content-length header from the PUT operation because the browser wants to do that on its own.

2 years agoPermit the Content-Transfer-Encoding: header to be forwarded from an HTTP transaction...
Art Cancro [Wed, 24 Nov 2021 04:48:36 +0000 (23:48 -0500)]
Permit the Content-Transfer-Encoding: header to be forwarded from an HTTP transaction to a post on a Citadel server.  This isn't typical for HTTP but we need it.

2 years agoMoved the remaining else blocks
Art Cancro [Wed, 24 Nov 2021 04:44:04 +0000 (23:44 -0500)]
Moved the remaining else blocks

2 years agoHandle posting errors a little more elegantly.
Art Cancro [Wed, 24 Nov 2021 01:09:23 +0000 (20:09 -0500)]
Handle posting errors a little more elegantly.

2 years agoDetect whether the save operation succeeded by checking the response status of the...
Art Cancro [Wed, 24 Nov 2021 00:57:07 +0000 (19:57 -0500)]
Detect whether the save operation succeeded by checking the response status of the XHR transaction.  Also made the default Citadel server dev.citadel.org instead of uncensored.citadel.org because I am posting a lot of test messages.

2 years agoWow! Posting a message to the server worked on the first try, even using the existin...
Art Cancro [Tue, 23 Nov 2021 23:41:11 +0000 (18:41 -0500)]
Wow!  Posting a message to the server worked on the first try, even using the existing DAV operation and no new C code.  That was a pleasant surprise.

2 years agoGot it working, now it's pretty
Art Cancro [Tue, 23 Nov 2021 21:24:50 +0000 (16:24 -0500)]
Got it working, now it's pretty

2 years agocontent editable window with focus and cursor
Art Cancro [Tue, 23 Nov 2021 21:13:48 +0000 (16:13 -0500)]
content editable window with focus and cursor

2 years agoFixed the vertical float issue by specifying the height of the text div and letting...
Art Cancro [Tue, 23 Nov 2021 00:22:57 +0000 (19:22 -0500)]
Fixed the vertical float issue by specifying the height of the text div and letting the rest wrap around as it wants to.

2 years agohow about that scroll?
Art Cancro [Sun, 21 Nov 2021 22:43:48 +0000 (17:43 -0500)]
how about that scroll?

2 years agoHot damn! I just discovered scrollIntoView()
Art Cancro [Sat, 20 Nov 2021 22:03:56 +0000 (17:03 -0500)]
Hot damn!  I just discovered scrollIntoView()

2 years agosave/cancel
Art Cancro [Thu, 18 Nov 2021 02:10:12 +0000 (21:10 -0500)]
save/cancel

2 years agoreplybox adornments
Art Cancro [Thu, 18 Nov 2021 01:30:10 +0000 (20:30 -0500)]
replybox adornments

2 years ago more work on the reply box
Art Cancro [Thu, 18 Nov 2021 01:25:23 +0000 (20:25 -0500)]
 more work on the reply box

2 years agoIntermediate commit: open a new div beneath the existing one when Reply or ReplyQuote...
Art Cancro [Thu, 18 Nov 2021 01:15:04 +0000 (20:15 -0500)]
Intermediate commit: open a new div beneath the existing one when Reply or ReplyQuoted is selected

2 years agofujobi
Art Cancro [Wed, 17 Nov 2021 23:04:30 +0000 (18:04 -0500)]
fujobi

2 years agoRelease version 940 generated by do-release.sh v940
Art Cancro [Mon, 15 Nov 2021 23:56:35 +0000 (18:56 -0500)]
Release version 940 generated by do-release.sh

2 years agoRemoved the remaining code where LDAP was optional.
Art Cancro [Mon, 15 Nov 2021 23:56:29 +0000 (18:56 -0500)]
Removed the remaining code where LDAP was optional.

2 years agoRemoved the 'old threaded view save for reference' code from the tree. It's still...
Art Cancro [Sun, 14 Nov 2021 23:34:32 +0000 (18:34 -0500)]
Removed the 'old threaded view save for reference' code from the tree.  It's still in the git history if we need it, and JWZ is still a self-righteous asshole.

2 years agoincreased the margin around the message reading boxes
Art Cancro [Sun, 14 Nov 2021 23:28:35 +0000 (18:28 -0500)]
increased the margin around the message reading boxes

2 years agonotes
Art Cancro [Sat, 6 Nov 2021 20:55:37 +0000 (16:55 -0400)]
notes

2 years agoSplit the forum view into a separate .js file. We will do this for all views.
Art Cancro [Sat, 6 Nov 2021 20:43:05 +0000 (16:43 -0400)]
Split the forum view into a separate .js file.  We will do this for all views.

2 years agonip and tuck
Art Cancro [Sat, 6 Nov 2021 20:07:02 +0000 (16:07 -0400)]
nip and tuck

2 years agoReply/ReplyAll/Delete buttons are pretty now
Art Cancro [Sat, 6 Nov 2021 20:05:13 +0000 (16:05 -0400)]
Reply/ReplyAll/Delete buttons are pretty now

2 years agoThe buttons now look like buttons, the reply button has a nice reply icon in it,...
Art Cancro [Fri, 5 Nov 2021 23:41:04 +0000 (19:41 -0400)]
The buttons now look like buttons, the reply button has a nice reply icon in it, and they change color when you hover over them.

2 years agoWhen sending MSGS commands, unescape the command being sent to the server
Art Cancro [Fri, 5 Nov 2021 21:54:06 +0000 (17:54 -0400)]
When sending MSGS commands, unescape the command being sent to the server

2 years agoTinkering with the headers some more
Art Cancro [Fri, 5 Nov 2021 21:40:25 +0000 (17:40 -0400)]
Tinkering with the headers some more

2 years agoAdded CSS style for the Loading Messages, Older Posts, Newer Posts divs
Art Cancro [Fri, 5 Nov 2021 21:32:45 +0000 (17:32 -0400)]
Added CSS style for the Loading Messages, Older Posts, Newer Posts divs

2 years agoDisplay the subject line -- only if present
Art Cancro [Mon, 1 Nov 2021 13:27:30 +0000 (09:27 -0400)]
Display the subject line -- only if present

2 years agoAdd subject to json output
Art Cancro [Sat, 30 Oct 2021 20:29:06 +0000 (16:29 -0400)]
Add subject to json output

2 years agoTuned up the CSS for message board view. It looks pretty good now.
Art Cancro [Sat, 30 Oct 2021 20:14:53 +0000 (16:14 -0400)]
Tuned up the CSS for message board view.  It looks pretty good now.

2 years agoUse overflow:hidden style to keep the user avatar photo from breaking through the...
Art Cancro [Sat, 30 Oct 2021 19:42:39 +0000 (15:42 -0400)]
Use overflow:hidden style to keep the user avatar photo from breaking through the rounded corner of the container.

2 years agoChanging signal handlers to the correct type eliminates the last of the warning messages
Art Cancro [Mon, 25 Oct 2021 17:25:17 +0000 (13:25 -0400)]
Changing signal handlers to the correct type eliminates the last of the warning messages

2 years agoSuppress format-truncation warnings because they are WRONG
Art Cancro [Mon, 25 Oct 2021 17:21:47 +0000 (13:21 -0400)]
Suppress format-truncation warnings because they are WRONG

2 years agoPoking around in the text client to determine whether we can remove dependency on...
Art Cancro [Thu, 21 Oct 2021 20:06:13 +0000 (16:06 -0400)]
Poking around in the text client to determine whether we can remove dependency on libcitadel.

2 years agoFinished converting all the comments in webcit-ng to C99 style
Art Cancro [Sat, 16 Oct 2021 23:21:06 +0000 (19:21 -0400)]
Finished converting all the comments in webcit-ng to C99 style

2 years agobackslashes are fun
Art Cancro [Sat, 16 Oct 2021 23:12:34 +0000 (19:12 -0400)]
backslashes are fun