5 hours agoRendering a single row in a mailbox now has its own function master
Art Cancro [Sun, 3 Jul 2022 21:04:46 +0000 (17:04 -0400)]
Rendering a single row in a mailbox now has its own function

6 hours agoUse the library functions to stringify a date instead of doing it the hard way.
Art Cancro [Sun, 3 Jul 2022 20:55:42 +0000 (16:55 -0400)]
Use the library functions to stringify a date instead of doing it the hard way.

2 days agoBeginnings of mailbox view
Art Cancro [Sat, 2 Jul 2022 02:17:06 +0000 (22:17 -0400)]
Beginnings of mailbox view

2 days agoI can't see the screen with my sunglasses on
Art Cancro [Fri, 1 Jul 2022 16:30:10 +0000 (12:30 -0400)]
I can't see the screen with my sunglasses on

2 days agoNew API "/ctdl/r/ROOMNAME/mailbox" downloads a mailbox summary of the current room...
Art Cancro [Fri, 1 Jul 2022 16:20:30 +0000 (12:20 -0400)]
New API "/ctdl/r/ROOMNAME/mailbox" downloads a mailbox summary of the current room (all fields).

2 days agoSet things up for mailbox view implementation
Art Cancro [Fri, 1 Jul 2022 15:34:55 +0000 (11:34 -0400)]
Set things up for mailbox view implementation

3 days agoSet up the view dispatcher for mailbox rooms
Art Cancro [Thu, 30 Jun 2022 18:44:45 +0000 (14:44 -0400)]
Set up the view dispatcher for mailbox rooms

3 days agoAdded the javascript logic to delete a message. This pretty much completes the forum...
Art Cancro [Thu, 30 Jun 2022 17:56:30 +0000 (13:56 -0400)]
Added the javascript logic to delete a message.  This pretty much completes the forum module.

4 days agoPass through the data to tell the client if it has room aide privileges and/or permis...
Art Cancro [Wed, 29 Jun 2022 21:17:04 +0000 (17:17 -0400)]
Pass through the data to tell the client if it has room aide privileges and/or permission to delete messages in the current room.  Aide or Room Aide privileges are now indicated via a user-with-cog icon in the room name banner.  The delete button in the forum view now only appears if the client believes it is allowed.

4 days agonew license declaration text
Art Cancro [Wed, 29 Jun 2022 20:21:04 +0000 (16:21 -0400)]
new license declaration text

4 days agowebcit-ng: don't generate .d files , they are not needed
Art Cancro [Wed, 29 Jun 2022 20:13:30 +0000 (16:13 -0400)]
webcit-ng: don't generate .d files , they are not needed

6 days agoRemoved more old artifacts from autoconf's reign of terror.
Art Cancro [Tue, 28 Jun 2022 01:52:58 +0000 (21:52 -0400)]
Removed more old artifacts from autoconf's reign of terror.

6 days agoRemoved close_masters() because it was completely redundant.
Art Cancro [Mon, 27 Jun 2022 16:34:48 +0000 (12:34 -0400)]
Removed close_masters() because it was completely redundant.
Master sockets are already closed during extension shutdown routines.
And yes we still use the word "master" because we are not politicially correct twits.

6 days agoNothing to see here, move along
Art Cancro [Mon, 27 Jun 2022 16:16:27 +0000 (12:16 -0400)]
Nothing to see here, move along

8 days agoRemoved the comments about not needing to block on select() , after remembering that...
Art Cancro [Sat, 25 Jun 2022 17:25:32 +0000 (13:25 -0400)]
Removed the comments about not needing to block on select() , after remembering that even though the thundering herd problem no longer exists, we still have to deal with timer events and incoming data on client sockets.  select() is still appropriate here.

8 days agoMostly just changes to make the code more readable. Everyone should do this once...
Art Cancro [Sat, 25 Jun 2022 17:20:38 +0000 (13:20 -0400)]
Mostly just changes to make the code more readable.  Everyone should do this once in a while.

8 days agoThe unused messages in setup.c are now in an unused function instead of being blocked...
Art Cancro [Sat, 25 Jun 2022 15:08:52 +0000 (11:08 -0400)]
The unused messages in setup.c are now in an unused function instead of being blocked out.  I don't know if this makes a difference to the strings available for translation but I did it just in case.

12 days agoRemoved support for Solaris, which has been dead for at least five years.
Art Cancro [Tue, 21 Jun 2022 18:24:04 +0000 (14:24 -0400)]
Removed support for Solaris, which has been dead for at least five years.

13 days agoI was today years old when I learned that the "thundering herd" problem no longer...
Art Cancro [Mon, 20 Jun 2022 18:13:49 +0000 (14:13 -0400)]
I was today years old when I learned that the "thundering herd" problem no longer exists in the Linux kernel.

2 weeks agoIn webcit-ng, allow -h to specify the Citadel Server data directory. This will allow...
Art Cancro [Thu, 16 Jun 2022 04:01:44 +0000 (00:01 -0400)]
In webcit-ng, allow -h to specify the Citadel Server data directory.  This will allow -h to work the same across all programs.

2 weeks agoRelease version 957 generated by v957
Art Cancro [Wed, 15 Jun 2022 18:50:07 +0000 (14:50 -0400)]
Release version 957 generated by

2 weeks agoRemoved some more portability hacks that were made for systems that are now completel...
Art Cancro [Wed, 15 Jun 2022 18:49:41 +0000 (14:49 -0400)]
Removed some more portability hacks that were made for systems that are now completely obsolete.

2 weeks agoHandle system accounts differently in auto purger
Art Cancro [Wed, 15 Jun 2022 12:54:38 +0000 (08:54 -0400)]
Handle system accounts differently in auto purger

2 weeks agoNice color modes in setup
Art Cancro [Tue, 14 Jun 2022 23:55:33 +0000 (19:55 -0400)]
Nice color modes in setup

2 weeks agoconfigure (in Citadel Server) - don't accept "--prefix" anymore.
Art Cancro [Tue, 14 Jun 2022 23:24:38 +0000 (19:24 -0400)]
configure (in Citadel Server) - don't accept "--prefix" anymore.
This option might confuse some people into thinking they're going
to get ${prefix}/[bin|etc|var] but we don't do that.  Now we only
accept "--ctdldir" to reflect our own directory hierarchy.
Easy Install has been modified to use --ctdldir as well.

2 weeks agoCtdlEncodeBase64() - only add linebreaks if told to by the caller.
Art Cancro [Tue, 14 Jun 2022 19:06:16 +0000 (15:06 -0400)]
CtdlEncodeBase64() - only add linebreaks if told to by the caller.
Also changed this parameter to an enum.

3 weeks agoRelease version 956 generated by v956
Art Cancro [Mon, 13 Jun 2022 01:28:35 +0000 (21:28 -0400)]
Release version 956 generated by

3 weeks agosed might be sed on some systems and gsed on others
Art Cancro [Mon, 13 Jun 2022 01:28:30 +0000 (21:28 -0400)]
sed might be sed on some systems and gsed on others

3 weeks agoRelease version 955 generated by v955
Art Cancro [Mon, 13 Jun 2022 01:20:30 +0000 (21:20 -0400)]
Release version 955 generated by

3 weeks agoRelease version 954 generated by v954
Art Cancro [Mon, 13 Jun 2022 01:01:55 +0000 (21:01 -0400)]
Release version 954 generated by

3 weeks agoRelease version 953 generated by v953
Art Cancro [Mon, 13 Jun 2022 01:01:40 +0000 (21:01 -0400)]
Release version 953 generated by

3 weeks agoRelease version 952 generated by v952
Art Cancro [Mon, 13 Jun 2022 01:00:26 +0000 (21:00 -0400)]
Release version 952 generated by

3 weeks agoAdd ${LDFLAGS} to utilities, not just the server.
Art Cancro [Sun, 12 Jun 2022 18:22:38 +0000 (14:22 -0400)]
Add ${LDFLAGS} to utilities, not just the server.

3 weeks agoThere are three specific compiler warnings that we don't care about. Suppress them...
Art Cancro [Sun, 12 Jun 2022 04:27:59 +0000 (00:27 -0400)]
There are three specific compiler warnings that we don't care about.  Suppress them using a GCC pragma in the header files instead of mucking up the build system.

3 weeks agoMore tweaking to cleanly support bin and run directories.
Art Cancro [Sun, 12 Jun 2022 04:01:58 +0000 (00:01 -0400)]
More tweaking to cleanly support bin and run directories.

3 weeks agoCTDLDIR is now properly compiled into the source code based on what was configured...
Art Cancro [Sat, 11 Jun 2022 23:40:07 +0000 (19:40 -0400)]
CTDLDIR is now properly compiled into the source code based on what was configured at build time.  This makes it properly run from its native directory if no extra commands are supplied, but it can run from another data directory if specified.

3 weeks agoIf you can't handle me at my worst, you don't deserve me at my best.
Art Cancro [Sat, 11 Jun 2022 23:27:53 +0000 (19:27 -0400)]
If you can't handle me at my worst, you don't deserve me at my best.

3 weeks agoMore work on "make install" including some simplification of
Art Cancro [Sat, 11 Jun 2022 17:46:34 +0000 (13:46 -0400)]
More work on "make install" including some simplification of  Debian stopped updating their Berkeley DB packages so we aren't going to support their "db{version}_util" syntax anymore.  This makes life easier for the build process, even though we now have no hope of expecting that a compatible version of BDB will be available in the operating system."

3 weeks agoModified some of the server source files to carry the new and improved version of...
Art Cancro [Thu, 9 Jun 2022 20:21:20 +0000 (16:21 -0400)]
Modified some of the server source files to carry the new and improved version of the GPL declaration that disrespects Richard Stallman.

3 weeks agoMake sure all of the utilities carry the new and improved version of the GPL declarat...
Art Cancro [Thu, 9 Jun 2022 20:14:26 +0000 (16:14 -0400)]
Make sure all of the utilities carry the new and improved version of the GPL declaration that disrespects Richard Stallman.

3 weeks agotextclient: test to see whether iconv requires -liconv in ldflags. Now it should...
Art Cancro [Wed, 8 Jun 2022 19:26:51 +0000 (15:26 -0400)]
textclient: test to see whether iconv requires -liconv in ldflags.  Now it should work on both Linux and FreeBSD.  I will backport this patch to the production release.

3 weeks agochkpw and chkpwd are now working
Art Cancro [Wed, 8 Jun 2022 14:20:16 +0000 (10:20 -0400)]
chkpw and chkpwd are now working

4 weeks agoConverted citmail to the new setup:
Art Cancro [Sun, 5 Jun 2022 17:05:38 +0000 (13:05 -0400)]
Converted citmail to the new setup:

4 weeks agoConverted two more utilities: ctdlmigrate and sendcommand
Art Cancro [Sun, 5 Jun 2022 17:02:46 +0000 (13:02 -0400)]
Converted two more utilities: ctdlmigrate and sendcommand

4 weeks agoMoved 'setup' to the utils directory and converted the build
Art Cancro [Sun, 5 Jun 2022 16:49:16 +0000 (12:49 -0400)]
Moved 'setup' to the utils directory and converted the build

4 weeks agoThis is an omnibus commit which moves the Citadel Server from crusty old GNU Autotool...
Art Cancro [Sat, 4 Jun 2022 23:11:58 +0000 (19:11 -0400)]
This is an omnibus commit which moves the Citadel Server from crusty old GNU Autotools to the shiny new conf-IG-ure system.  WARNING BROKEN BUILD ALERT: at the moment it only compiles the server and lacks 'clean' and 'install' targets.  Subsequent commits will resolve these but don't try to build production from this yet.

4 weeks agoremoved some debugs
Art Cancro [Mon, 30 May 2022 22:33:41 +0000 (18:33 -0400)]
removed some debugs

5 weeks agoRelease version 951 generated by v951
Art Cancro [Mon, 23 May 2022 19:57:40 +0000 (20:57 +0100)]
Release version 951 generated by

5 weeks agoRewrote our local implementation of a Base64 encoder/decoder as specified
Art Cancro [Mon, 23 May 2022 19:56:39 +0000 (20:56 +0100)]
Rewrote our local implementation of a Base64 encoder/decoder as specified
in RFC 2045 section 6.8.   In the past, someone tried to make this "elegant"
and in the process they made it broken when certain conditions exist.  If
you are reading this and it isn't broken, don't try to improve it.  It works
and I don't want to fix it again.  I don't care how many nanoseconds you think
you can shave off the execution time.  Don't fucking touch it.

6 weeks agoCommitting all of my little comment syntax changes and getting them out of the way...
Art Cancro [Sat, 21 May 2022 16:55:44 +0000 (17:55 +0100)]
Committing all of my little comment syntax changes and getting them out of the way because I'm about to rip out a big chunk of code and rewrite it.

6 weeks agocomment style
Art Cancro [Fri, 20 May 2022 23:47:35 +0000 (00:47 +0100)]
comment style

6 weeks agoRemoved traces after realizing that I was hitting config.c_maxmsglen and not an actua...
Art Cancro [Wed, 18 May 2022 19:52:09 +0000 (20:52 +0100)]
Removed traces after realizing that I was hitting config.c_maxmsglen and not an actual bug.  Added a debug message to indicate when this happened.

6 weeks agoTemporarily added some debugs and an assert() statement to show where the message...
Art Cancro [Tue, 17 May 2022 18:03:11 +0000 (19:03 +0100)]
Temporarily added some debugs and an assert() statement to show where the message buffer is getting truncated during large reads on low memory systems.

6 weeks agoFound another vestige of ignet to remove
Art Cancro [Tue, 17 May 2022 17:13:08 +0000 (18:13 +0100)]
Found another vestige of ignet to remove

6 weeks agoFixed a buffer size calculation that caused uploads to crash on memory-constrained...
Art Cancro [Mon, 16 May 2022 15:26:52 +0000 (16:26 +0100)]
Fixed a buffer size calculation that caused uploads to crash on memory-constrained systems such as raspberry pi.

2 months agoTaking a peek at serv_expire.c to see what would be involved in deleting
Art Cancro [Mon, 2 May 2022 23:43:17 +0000 (19:43 -0400)]
Taking a peek at serv_expire.c to see what would be involved in deleting
users who aren't in LDAP anymore.  And you know what that means: I can't
help myself but to update the comment style all over that file.

2 months agoMeow meow! Applied patches sent by LadySerenaKitty for improved FreeBSD compatibility.
Art Cancro [Wed, 20 Apr 2022 00:03:36 +0000 (20:03 -0400)]
Meow meow!  Applied patches sent by LadySerenaKitty for improved FreeBSD compatibility.

2 months agoRelease version 950 generated by v950
Art Cancro [Sat, 9 Apr 2022 20:17:42 +0000 (16:17 -0400)]
Release version 950 generated by

2 months agoImproved compatibility with POSIX LDAP Schema. Tested with FreeIPA demo site.
Art Cancro [Sat, 9 Apr 2022 20:17:09 +0000 (16:17 -0400)]
Improved compatibility with POSIX LDAP Schema.  Tested with FreeIPA demo site.

2 months agoUpdated LDAP code to be compatible with more modern OpenLDAP API
Art Cancro [Fri, 8 Apr 2022 23:13:04 +0000 (19:13 -0400)]
Updated LDAP code to be compatible with more modern OpenLDAP API

3 months agoderive_uid_from_ldap() converted to use ldap_get_values_len() which is not deprecated
Art Cancro [Sat, 12 Mar 2022 20:47:10 +0000 (15:47 -0500)]
derive_uid_from_ldap() converted to use ldap_get_values_len() which is not deprecated

3 months agoClick on a user or their avatar to go to their profile from the forum view
Art Cancro [Sat, 5 Mar 2022 23:30:15 +0000 (18:30 -0500)]
Click on a user or their avatar to go to their profile from the forum view

4 months agoWowzers! Copied the login modal example from the w3css web site. Looks better than...
Art Cancro [Sun, 27 Feb 2022 18:34:35 +0000 (13:34 -0500)]
Wowzers!  Copied the login modal example from the w3css web site.  Looks better than what I did ... of course.

4 months agoclick on the envelope to go to the inbox
Art Cancro [Sun, 27 Feb 2022 17:23:21 +0000 (12:23 -0500)]
click on the envelope to go to the inbox

4 months agosome comments
Art Cancro [Sat, 26 Feb 2022 21:42:40 +0000 (16:42 -0500)]
some comments

4 months agoHandle messages that are empty (or which appear empty to MSG4 because they consist...
Art Cancro [Sat, 26 Feb 2022 20:13:14 +0000 (15:13 -0500)]
Handle messages that are empty (or which appear empty to MSG4 because they consist solely of a non-renderable attachment in Part 0) by delivering a null json instead of locking up.

4 months agoTuned up some of the iconography
Art Cancro [Thu, 17 Feb 2022 01:16:02 +0000 (20:16 -0500)]
Tuned up some of the iconography

4 months agoThe sidebar buttons are now unhighlighted by default. When rendering a room view...
Art Cancro [Thu, 17 Feb 2022 00:41:50 +0000 (19:41 -0500)]
The sidebar buttons are now unhighlighted by default.  When rendering a room view, iterate through all of them, unhighlight any that are highlighted, and then highlight the correct one.

4 months agoUse the w3-badge class for circular badges instead of rounding them manually in the...
Art Cancro [Thu, 17 Feb 2022 00:11:10 +0000 (19:11 -0500)]
Use the w3-badge class for circular badges instead of rounding them manually in the stylesheet.

4 months agoUpgrade W3.CSS to version 4.15
Art Cancro [Wed, 16 Feb 2022 23:59:22 +0000 (18:59 -0500)]
Upgrade W3.CSS to version 4.15

4 months agoUse the Font Awesome 6.0.0 hosted version instead of 5.whatever ... note to self...
Art Cancro [Wed, 16 Feb 2022 23:53:34 +0000 (18:53 -0500)]
Use the Font Awesome 6.0.0 hosted version instead of 5.whatever ... note to self: now that I know they just randomly pull back versions off the CDN, we need to host our own or include it in the package during final distribution.  Bad form, FA people.  Bad form.

4 months agomoved vars to vars.js
Art Cancro [Mon, 14 Feb 2022 00:01:57 +0000 (19:01 -0500)]
moved vars to vars.js

4 months agoAnything that looks like a button should act like a button.
Art Cancro [Sun, 13 Feb 2022 22:58:06 +0000 (17:58 -0500)]
Anything that looks like a button should act like a button.
Anything that acts like a button should look like a button.

4 months agoSkip/Goto are functionally complete.
Art Cancro [Sun, 13 Feb 2022 21:53:26 +0000 (16:53 -0500)]
Skip/Goto are functionally complete.

4 months agoClient side of SLRP is done
Art Cancro [Sat, 12 Feb 2022 23:34:36 +0000 (18:34 -0500)]
Client side of SLRP is done

4 months agoKeep track of the last message number we saw
Art Cancro [Sat, 12 Feb 2022 23:10:22 +0000 (18:10 -0500)]
Keep track of the last message number we saw

4 months agoOnly add _BASEROOM_ to the march list if the number of rooms added
Art Cancro [Fri, 11 Feb 2022 23:00:47 +0000 (18:00 -0500)]
Only add _BASEROOM_ to the march list if the number of rooms added
to it was zero -- implying that there are no rooms with new messages.

4 months agoFixed a bug in the "goto next room" logic that was causing the first click of Goto...
Art Cancro [Fri, 11 Feb 2022 21:56:42 +0000 (16:56 -0500)]
Fixed a bug in the "goto next room" logic that was causing the first click of Goto (or Skip) to load the march list but then didn't actually change rooms.

4 months agoRe-encode the auth cookie with the properly formatted user name. This makes the...
Art Cancro [Tue, 8 Feb 2022 23:19:17 +0000 (18:19 -0500)]
Re-encode the auth cookie with the properly formatted user name.  This makes the client side parse it properly.

4 months agoMore gratuitous style cleanup.
Art Cancro [Sun, 6 Feb 2022 23:22:07 +0000 (18:22 -0500)]
More gratuitous style cleanup.

4 months ago"Forum list" is now more or less in its final form.
Art Cancro [Sat, 5 Feb 2022 05:19:06 +0000 (00:19 -0500)]
"Forum list" is now more or less in its final form.

4 months agoNow it has a button look.
Art Cancro [Fri, 4 Feb 2022 00:37:09 +0000 (19:37 -0500)]
Now it has a button look.

4 months agoRooms in the Forums List are now clickable anywhere in the box, not just the room...
Art Cancro [Fri, 4 Feb 2022 00:30:41 +0000 (19:30 -0500)]
Rooms in the Forums List are now clickable anywhere in the box, not just the room name.

4 months agoMade the bubble icons in the Forums list round, and colored differently based on...
Art Cancro [Fri, 4 Feb 2022 00:25:44 +0000 (19:25 -0500)]
Made the bubble icons in the Forums list round, and colored differently based on the presence of new messages.

5 months agoInitial commit of the "new" room list. It's going to be a lot more "traditional...
Art Cancro [Tue, 1 Feb 2022 23:46:06 +0000 (18:46 -0500)]
Initial commit of the "new" room list.  It's going to be a lot more "traditional web forum" looking.  I hope I don't regret this.

5 months agomore divs
Art Cancro [Fri, 28 Jan 2022 05:01:12 +0000 (00:01 -0500)]
more divs

5 months agoctdl-roomlist-floor class for the floor banner over each floor's room list
Art Cancro [Fri, 28 Jan 2022 00:22:36 +0000 (19:22 -0500)]
ctdl-roomlist-floor class for the floor banner over each floor's room list

5 months ago/ctdl/r/<room_name>/info.txt now fetches the room info banner
Art Cancro [Thu, 27 Jan 2022 23:41:18 +0000 (18:41 -0500)]
/ctdl/r/<room_name>/info.txt now fetches the room info banner

5 months agoSort room list by floor but also put them in different divs
Art Cancro [Tue, 25 Jan 2022 00:38:19 +0000 (19:38 -0500)]
Sort room list by floor but also put them in different divs

5 months ago/ctdl/f/ to get a list of all floors
Art Cancro [Mon, 24 Jan 2022 20:40:45 +0000 (15:40 -0500)]
/ctdl/f/ to get a list of all floors

5 months agoroom list renderer is now aware of which rooms are forum view:
Art Cancro [Sun, 23 Jan 2022 21:14:05 +0000 (16:14 -0500)]
room list renderer is now aware of which rooms are forum view:

5 months agoMoved the room list from the sidebar to the main viewing pane.
Art Cancro [Sun, 23 Jan 2022 21:01:16 +0000 (16:01 -0500)]
Moved the room list from the sidebar to the main viewing pane.
This is going to turn into a "forum list" and we'll do something
else for mailboxes.

5 months agoTweaked the icons a bit
Art Cancro [Sun, 23 Jan 2022 06:28:23 +0000 (01:28 -0500)]
Tweaked the icons a bit

5 months agoThe "Post message" button in forum view is now active.
Art Cancro [Sat, 22 Jan 2022 21:56:29 +0000 (16:56 -0500)]
The "Post message" button in forum view is now active.

5 months agoSet up a "new item" dispatcher so it can be different for each view
Art Cancro [Sat, 22 Jan 2022 21:24:09 +0000 (16:24 -0500)]
Set up a "new item" dispatcher so it can be different for each view

5 months agoAdded a button to the screen that can be populated and brought into
Art Cancro [Sat, 22 Jan 2022 21:02:22 +0000 (16:02 -0500)]
Added a button to the screen that can be populated and brought into
view whenever a "new item" command is available, such as "Post message"
or "Enter mail" or "New calendar item"

5 months agoExplain in comments how the connection pool works.
Art Cancro [Sat, 15 Jan 2022 20:58:46 +0000 (15:58 -0500)]
Explain in comments how the connection pool works.

5 months agoI was able to simplify the login code too. ctdl_startup() is now called at landing...
Art Cancro [Sat, 15 Jan 2022 20:41:53 +0000 (15:41 -0500)]
I was able to simplify the login code too.  ctdl_startup() is now called at landing, at login, and logout.  It always does The Right Thing.

5 months agook, that function needed to be async
Art Cancro [Sat, 15 Jan 2022 20:37:44 +0000 (15:37 -0500)]
ok, that function needed to be async

5 months agoSimplified the logout javascript
Art Cancro [Sat, 15 Jan 2022 20:28:54 +0000 (15:28 -0500)]
Simplified the logout javascript