Art Cancro [Wed, 3 Jan 2024 18:58:45 +0000 (13:58 -0500)]
clarify terms in license
Art Cancro [Wed, 3 Jan 2024 18:41:16 +0000 (13:41 -0500)]
dumploadtest.sh: added an exit 0 to the top of the script.
This is a testing script intended for developers. The last thing
we need is for some dumbass to run it without knowing what it does,
and then come to us complaining that it deleted their database.
Art Cancro [Wed, 3 Jan 2024 18:34:06 +0000 (13:34 -0500)]
In case you haven't figured it out yet...
This is what I do when I'm avoiding some other task.
Art Cancro [Wed, 3 Jan 2024 18:15:24 +0000 (13:15 -0500)]
Grammar change in the license declaration.
Many of the files say "use, duplication, or disclosure ARE subject
to..." but the common phrasing of this statement is apparently "use,
duplication, or disclosure IS subject to..."
We are already taking great delight in the fact that we are using the
GPL without using Stallman's preferred declaration of it. And of course
we call it open source software.
When Steve Jobs died, Richard Stallman said "I'm not glad he's dead,
but I'm glad he's gone." I agreed with him. When Richard Stallman dies,
I will say "I'm not glad he's dead, but I'm glad he's gone." But
when Bill Gates dies, I will be glad he's dead. I will celebrate.
Art Cancro [Wed, 3 Jan 2024 18:12:25 +0000 (13:12 -0500)]
style cleanup
Art Cancro [Wed, 3 Jan 2024 17:01:44 +0000 (12:01 -0500)]
More C99-style comments.
Art Cancro [Tue, 2 Jan 2024 22:00:38 +0000 (17:00 -0500)]
The sooner we can put webcit-classic out to pasture the better.
Between its origin as a shitty web application that I built when I had
no idea what the hell I was doing, to all of the ways other people fucked
it up later, this thing needs to die. As soon as possible.
Art Cancro [Tue, 2 Jan 2024 21:57:06 +0000 (16:57 -0500)]
serv_func.c: simplify IDEN command
Remove parameters no longer used
Art Cancro [Tue, 2 Jan 2024 21:38:07 +0000 (16:38 -0500)]
Utilities displaying a color banner now use line drawing characters to form a box instead of clearing to the end of the line with the background color. The latter does not have the desired effect on all terminals.
Art Cancro [Tue, 2 Jan 2024 18:42:38 +0000 (13:42 -0500)]
context.c: last_purge is local to dead_session_purge()
Art Cancro [Tue, 2 Jan 2024 18:21:39 +0000 (13:21 -0500)]
Changes to server session timeouts.
CLIENT_TIMEOUT was found in the header files but not used anywhere. Removed.
dont_term was removed because it was not needed anywhere anymore.
Art Cancro [Tue, 2 Jan 2024 18:10:18 +0000 (13:10 -0500)]
It is the current year. (c)-2024
Art Cancro [Tue, 2 Jan 2024 18:07:33 +0000 (13:07 -0500)]
Remove sock_close and sock_shutdown 'portability' defs.
Art Cancro [Sun, 31 Dec 2023 23:30:07 +0000 (18:30 -0500)]
Removed the dev_code, cli_code, and rev_level fields from the server session.
Art Cancro [Sun, 31 Dec 2023 23:12:54 +0000 (18:12 -0500)]
serv_session.c: style update
Art Cancro [Wed, 27 Dec 2023 23:45:03 +0000 (18:45 -0500)]
Starting to bring over calendar server code from webcit-classic.
Art Cancro [Wed, 27 Dec 2023 19:48:52 +0000 (14:48 -0500)]
view_calendar.js: finalized a fetch design pattern
This uses "fetch" followed by ".then" etc. etc. etc.
and is tuned to be a design pattern for future code
Art Cancro [Wed, 27 Dec 2023 18:53:52 +0000 (13:53 -0500)]
calendar_view.c (from webcit-classic) : clean up
Style and comments cleanup. Some of this code is going to get
copied over to WebCit-NG so we need to bring it up to our current
coding standards (K&R, 1TBF, with C99-style comments)
Art Cancro [Fri, 22 Dec 2023 23:58:46 +0000 (18:58 -0500)]
Worked out the syntax for requesting a calendar range
Art Cancro [Fri, 22 Dec 2023 16:54:16 +0000 (11:54 -0500)]
moar skeleton
Art Cancro [Fri, 22 Dec 2023 16:39:42 +0000 (11:39 -0500)]
webcit.h: regenerated function prototypes using cproto
Art Cancro [Fri, 22 Dec 2023 16:24:19 +0000 (11:24 -0500)]
calendar_functions.c: added skeleton
Art Cancro [Fri, 22 Dec 2023 16:10:14 +0000 (11:10 -0500)]
room_functions.c: get_msglist() now returns Array
Previously it returned a long* which contained a list of longs.
Assembling this required the same allocation logic used in our
array class, so now we're just using the array class.
Art Cancro [Fri, 22 Dec 2023 15:52:57 +0000 (10:52 -0500)]
Changed the arrangement of bytes in the universe
Art Cancro [Thu, 21 Dec 2023 21:27:31 +0000 (16:27 -0500)]
Updated copyright date in files where git blame shows 2023 mods
Art Cancro [Wed, 20 Dec 2023 17:13:03 +0000 (12:13 -0500)]
Added stub renderers for Calendar and Contacts rooms
Art Cancro [Wed, 20 Dec 2023 16:51:12 +0000 (11:51 -0500)]
views.js: convert strings to template literals
Art Cancro [Wed, 20 Dec 2023 15:50:53 +0000 (10:50 -0500)]
Found a place where 1TBS was not used, and fixed it.
1TBS is important. People who do not use 1TBS are literally Hitler.
Art Cancro [Wed, 20 Dec 2023 04:15:10 +0000 (23:15 -0500)]
More template literals.
Art Cancro [Wed, 20 Dec 2023 04:12:38 +0000 (23:12 -0500)]
I really like template literals.
And now that I know how to use them, I will be using more of them.
Art Cancro [Wed, 20 Dec 2023 04:07:00 +0000 (23:07 -0500)]
Tuned up the CSS on more banner buttons
Art Cancro [Tue, 19 Dec 2023 22:09:21 +0000 (17:09 -0500)]
Make the font sizes less cartoonish at extreme viewport sizes
Art Cancro [Mon, 18 Dec 2023 19:26:30 +0000 (14:26 -0500)]
When forwarding an email, pre-load its attachments.
This completes the effort to server-side-preload the attachments from
the original message. They appear as attachments in the forwarded copy
of the message in the composer, using the same API. A lot of effort
went into making the 'attach' and 'forward attachments' functions DRY
with respect to each other.
Art Cancro [Mon, 18 Dec 2023 04:39:00 +0000 (23:39 -0500)]
serv_smtpclient.c: style cleanup
Mostly just made stuff look nice in 132 columns
Art Cancro [Thu, 14 Dec 2023 16:30:52 +0000 (11:30 -0500)]
upload.c: completed the code to reload attachments.
Now we have an API call to load attachments from existing messages
instead of from the browser. This is the server side API. Still need
to integrate it into the client.
Art Cancro [Thu, 14 Dec 2023 15:29:02 +0000 (10:29 -0500)]
view_mail.js: don't list attachments in a quote or forward
Art Cancro [Wed, 13 Dec 2023 22:52:18 +0000 (17:52 -0500)]
upload.c: skeleton code for load_attachments_from_message()
Art Cancro [Wed, 13 Dec 2023 22:25:43 +0000 (17:25 -0500)]
uploads.c: made the syslog less verbose
Also documented the JSON return values in api.txt
Art Cancro [Wed, 13 Dec 2023 03:15:17 +0000 (22:15 -0500)]
view_mail.js: more improvements to mail forwarding
* "Fwd:" instead of "Re:"
* The "--- forwarded message ---" po string is carried over from webcit-classic
* Make the editor aware that a message is being forwarded
* TODO: load attachments from the message being forwarded
Art Cancro [Wed, 13 Dec 2023 02:21:19 +0000 (21:21 -0500)]
Keep the "Attachments:" button updated.
When an attachment is added or removed using the upload window,
also update the count in the button.
Art Cancro [Wed, 13 Dec 2023 02:10:57 +0000 (21:10 -0500)]
"Number of attachments" div name is now variable.
Actually it's an array of strings, and the upload module will
update every div stored in there with the attachment count.
Art Cancro [Thu, 7 Dec 2023 23:51:32 +0000 (18:51 -0500)]
view_mail.js: remove upload from local array when deleted.
This makes the Attachments: counter decrement correctly.
Art Cancro [Thu, 7 Dec 2023 20:29:18 +0000 (15:29 -0500)]
view_mail.js: removed the is_quoted parameter.
is_quoted is now determined by whether quoted_msgnum is nonzero.
In mail, we always pull quote for replies.
Art Cancro [Wed, 6 Dec 2023 21:20:40 +0000 (16:20 -0500)]
view_mail.js: fixed handling of references field
Art Cancro [Thu, 30 Nov 2023 19:07:12 +0000 (09:07 -1000)]
Converting recipient arrays to recipient strings:
Fixed the dedupe so it works before now, and
also made it DRY.
Art Cancro [Thu, 30 Nov 2023 18:20:09 +0000 (08:20 -1000)]
databaselayout.md: updated to remove networking
Art Cancro [Wed, 29 Nov 2023 21:32:02 +0000 (11:32 -1000)]
Fixing the parameters sent to the mail composer.
Reply/ReplyAll/Forward need some things that are not strings
and the source arrays seem to still be in scope, so we go with
that. Need to tune this up some more. Some things are still
missing, such as the references and reply msgnum.
Art Cancro [Wed, 29 Nov 2023 04:52:36 +0000 (18:52 -1000)]
view_mail.js: make the Forward button appear.
Needs a lot of work. Currently it is just a reply with no addressees filled in.
It needs to not quote the message, and carry over the attachments.
Art Cancro [Wed, 29 Nov 2023 04:31:41 +0000 (18:31 -1000)]
"make cc/bcc visible" now makes BOTH visible.
Somewhere along the line it lost CC and only showed BCC.
Art Cancro [Mon, 27 Nov 2023 21:43:38 +0000 (11:43 -1000)]
serv_extensions.c: style cleanup from 30,000 feet
No, I'm not takin a broader view of the code. I'm actually on an airplane.
Art Cancro [Tue, 21 Nov 2023 23:26:46 +0000 (18:26 -0500)]
Focus on "To:" for new messages, body for replies.
Art Cancro [Tue, 21 Nov 2023 23:22:57 +0000 (18:22 -0500)]
mail view: focus the cursor in the correct place when composing
Art Cancro [Tue, 21 Nov 2023 22:55:03 +0000 (17:55 -0500)]
Restored the gap before the "Hi From Stu" sound.
Now I see why he put it there in the first place.
Some players (including the one in my browser) cut off
the first bit of sound.
Art Cancro [Tue, 21 Nov 2023 22:52:41 +0000 (17:52 -0500)]
Only attempt to insert quote when replying to mail.
Also do that after rendering the attachments window.
Doing it before doesn't work.
I don't know why.
Art Cancro [Tue, 21 Nov 2023 14:41:18 +0000 (09:41 -0500)]
Removed temporary diagnostic output
Art Cancro [Tue, 21 Nov 2023 00:00:13 +0000 (19:00 -0500)]
upload.js: when removing an attachment, delete the div
This is handled the usual way, when we get a successful response from
the HTTP DELETE method, it triggers the removal of the list element
showing the attachment.
Art Cancro [Sun, 19 Nov 2023 18:39:12 +0000 (13:39 -0500)]
When a mail compose is canceled, flush all uploads.
Most of this was already in place. We now just run through our upload
list and do an async DELETE operation for each one.
Art Cancro [Thu, 9 Nov 2023 23:44:52 +0000 (13:44 -1000)]
upload.js: moved the delete-an-attachment skeleton code to its own function
Art Cancro [Mon, 6 Nov 2023 22:57:44 +0000 (17:57 -0500)]
Fixed the MIME boundary after the message text.
It had the trailing dashes in it, so it was getting interpreted as the end of the message.
Now that's corrected and the parsers of the world are happy.
Also, we eliminated the double-nesting thing, and everything is hunky dory now.
Art Cancro [Mon, 6 Nov 2023 22:51:13 +0000 (17:51 -0500)]
Quoted-printable encode HTML messages on the WebCit Server side.
This allows us to do multipart with attachments without nested encoding.
Art Cancro [Mon, 6 Nov 2023 21:56:55 +0000 (16:56 -0500)]
webcit-ng: fixed the way HTTP uploads are fed into the MIME Parser.
mime_parser() expects HEADERS+CONTENT but our h.request_body only contains CONTENT.
The fix: our transaction struct now has h.request_body_with_synth_headers that
begins with a synthetic Content-Type: header followed by a blank line and then the
request body. h.request_body is now just a pointer into that buffer, starting at
the position where the actual body begins.
This gives us the ability to supply the body with or without headers, without having
to make two copies of it.
Art Cancro [Mon, 6 Nov 2023 16:57:37 +0000 (11:57 -0500)]
considering nuclear weapons
Art Cancro [Mon, 6 Nov 2023 16:48:36 +0000 (11:48 -0500)]
Looks like I need to remove some optimization cancer from mime_parser.c, but first, a bit of style cleanup.
Art Cancro [Mon, 6 Nov 2023 16:30:08 +0000 (11:30 -0500)]
Progress on upload
Art Cancro [Fri, 3 Nov 2023 20:34:07 +0000 (16:34 -0400)]
room_functions.c: remove diagnostic hex dump of recipient field
Art Cancro [Fri, 3 Nov 2023 04:13:46 +0000 (19:13 -0900)]
json.c: encode JSON strings the correct way (RFC 7159 section 7).
The previous code used the JavaScript encoder from the stringbuf library, which
is *not* the same encoding. Now it doesn't make the browser's parser barf when
it encounters a control character.
Art Cancro [Fri, 3 Nov 2023 02:42:28 +0000 (17:42 -0900)]
War on old style continues.
I really ought to be writing some real code tonight. But I get into a file and I see
old style and I want to make it clean and shiny and it's easier than the kind of heavy
brain work I should be doing. When faced with a heavy think, I dawdle for a long time
before I really get started. I've done this since I was a child.
Art Cancro [Mon, 30 Oct 2023 18:05:20 +0000 (09:05 -0900)]
stringbuf.c: chipped away at style modernization
This is a big one with a lot of outdated style in it.
Folded lines which were >80 columns but <132 columns.
Add {} braces to single-line conditional blocks.
Replaced C89 comments with C99 comments.
Art Cancro [Mon, 30 Oct 2023 17:49:24 +0000 (08:49 -0900)]
vcard.c: style cleanup
Art Cancro [Fri, 27 Oct 2023 20:39:54 +0000 (11:39 -0900)]
Changed some C89 style comments to C99 style.
This is what I do when I'm slacking off and should be doing something useful.
Art Cancro [Fri, 27 Oct 2023 17:57:43 +0000 (08:57 -0900)]
removed an unused function
Art Cancro [Sat, 21 Oct 2023 16:55:17 +0000 (07:55 -0900)]
Saving my place.
Note to self: there is something in the mailbox of admin@dev that is
causing the renderer to fail and the javascript console emits unhelpful
messages.
Art Cancro [Mon, 16 Oct 2023 20:22:52 +0000 (20:22 +0000)]
loadtest: counters row offset from banner is definable
Art Cancro [Mon, 16 Oct 2023 19:53:17 +0000 (19:53 +0000)]
loadtest: counter position is now derived from thread id, not socket number.
This is what I was actually trying to accomplish a couple of commits ago. I made
a race condition and that's why it was malfunctioning. This way is better and it
works. It also once shot a man in Reno just to watch him die.
Art Cancro [Mon, 16 Oct 2023 19:34:59 +0000 (19:34 +0000)]
loadtest: paint the screen in a separate pass
Art Cancro [Mon, 16 Oct 2023 16:14:27 +0000 (12:14 -0400)]
tried some random cosmetic stuff and removed it
Art Cancro [Mon, 16 Oct 2023 16:08:39 +0000 (12:08 -0400)]
Revert "loadtest: change display"
This reverts commit
fdd4f3034903e50395e72acf74636e4cb12c2291.
Art Cancro [Mon, 16 Oct 2023 15:59:58 +0000 (06:59 -0900)]
loadtest: change display
Art Cancro [Fri, 13 Oct 2023 15:45:30 +0000 (06:45 -0900)]
server/housekeeping.c: fix a small compiler warning
Art Cancro [Fri, 13 Oct 2023 15:32:40 +0000 (11:32 -0400)]
More progress on attaching attachments
Art Cancro [Wed, 11 Oct 2023 22:55:08 +0000 (18:55 -0400)]
messages.c: inching towards saving the attachments
Art Cancro [Wed, 11 Oct 2023 22:44:05 +0000 (18:44 -0400)]
Don't try to destroy the upload window if it doesn't exist.
Art Cancro [Wed, 11 Oct 2023 22:36:29 +0000 (18:36 -0400)]
Got multipart/mixed being transmitted
Art Cancro [Wed, 11 Oct 2023 21:58:46 +0000 (17:58 -0400)]
deactivate_uploads() hides the window.
Art Cancro [Wed, 11 Oct 2023 03:18:07 +0000 (23:18 -0400)]
broken: attachments window cannot be a child of the editor body
It causes the attachments window to be saved as part of the message text.
Oof.
Art Cancro [Wed, 11 Oct 2023 02:37:48 +0000 (22:37 -0400)]
upload: reduce attachment identifiers to 9 characters.
Also switched from a unicode X to a fontawesome rounded-X for the
'remove attachment' button. The unicode one was too big.
Art Cancro [Tue, 10 Oct 2023 22:56:09 +0000 (18:56 -0400)]
move struct uploaded_file to webcit.h
Art Cancro [Fri, 6 Oct 2023 03:31:54 +0000 (23:31 -0400)]
loadtest: small file cleanup
Art Cancro [Fri, 6 Oct 2023 03:20:27 +0000 (23:20 -0400)]
upload DELETE method
Art Cancro [Fri, 6 Oct 2023 03:10:24 +0000 (23:10 -0400)]
Various operations in the /ctdl/p/ hierarchy to handle uploading of attachments
Art Cancro [Wed, 4 Oct 2023 21:34:10 +0000 (17:34 -0400)]
❌ marks the spot
root [Wed, 4 Oct 2023 18:55:26 +0000 (14:55 -0400)]
uploads
root [Wed, 4 Oct 2023 16:49:34 +0000 (12:49 -0400)]
upload.c: hold uploads in temporary file handles
Art Cancro [Tue, 3 Oct 2023 18:35:01 +0000 (14:35 -0400)]
upload: change REST path from /ctdl/a/upload/ to /ctdl/p/
Art Cancro [Tue, 3 Oct 2023 18:26:11 +0000 (14:26 -0400)]
api.txt: updated
Art Cancro [Tue, 3 Oct 2023 17:50:06 +0000 (13:50 -0400)]
libcitadel/configure.in: renamed to configure.ac
Art Cancro [Sat, 30 Sep 2023 04:55:54 +0000 (00:55 -0400)]
upload.c: rename "tempfilename" to "ref"
This will hopefully discourage people from trying to play stupid tricks
involving guessing the filename and trying to escape the containment.
Art Cancro [Sat, 30 Sep 2023 04:47:08 +0000 (00:47 -0400)]
upload.js: moved these functions into own file.
Good clean separation of functions.
This should allow us to handle uploads in lots of different places
in the system.
Art Cancro [Sat, 30 Sep 2023 04:27:35 +0000 (00:27 -0400)]
array.c: minor changes to comments
Art Cancro [Fri, 29 Sep 2023 02:19:43 +0000 (22:19 -0400)]
Release version 996 generated by do-release.sh