AmendHub

Download: |

jcs

/

subtext

 

(View History)


BBS server for classic Mac OS

jcs   settings+sysop: Fix bug in settings editor that can corrupt settings

Name Last Commit Last Modified
AddressXlation.h *: Lots of little cleanup 1 year ago
GUIDE GUIDE: Mention NoModem 5 months ago
LICENSE LICENSE: Add 10 months ago
MacTCP.h *: Lots of little cleanup 1 year ago
README README: 2.0.1 4 months ago
ansi.c ansi: Fix panic message 6 months ago
ansi.h session: Don't run all session_printf formats through expand_template 1 year ago
bile.c bile: Only do synchronous PBFlushFile calls, fixes possible lockup 5 months ago
bile.h bile: Cope with malloc/realloc failures gracefully when possible 6 months ago
binkp.c binkp: Always set next poll to interval seconds even on failure 5 months ago
binkp.h binkp: Move polling out of here, tweak some log messages 6 months ago
board.c board+folder: When dynamically disabling menu options, do it by ret 1 month ago
board.h board+main_menu: Add ACTION_BOARD_LIST_BOARDS, fix bug in indexing 5 months ago
chat.c session+chat: Finally implement sysop paging/answering 5 months ago
chat.h session+chat: Finally implement sysop paging/answering 5 months ago
console.c console: Dismiss any progress dialog before opening 5 months ago
console.h focusable: Introduce focusable objects 1 year ago
crc.c crc: Fix UpdateCRC32 macro, move tables into C file 1 year ago
crc.h crc: Add explicit casting to UpdateCRC like UpdateCRC32 1 year ago
db.c db: Include AT&D2 in default modem init, we need it for hangup 1 month ago
db.h db: Add location field to session{,_log}, ipdb db path to config 3 months ago
dnr.c dnr: Don't require a pointer to a pointer for DNSResolveName 5 months ago
fidopkt.c fidopkt: Crank scratch buffer size in fidopkt_encode_message 5 months ago
fidopkt.h fidopkt: A single packet can have multiple messages in it 6 months ago
focusable.c focusable: Allow add_focusable to fail 6 months ago
focusable.h focusable: Allow add_focusable to fail 6 months ago
folder.c board+folder: When dynamically disabling menu options, do it by ret 1 month ago
folder.h binkp: Import unseen messages into boards with matching fidonet_area 7 months ago
ipdb.c ipdb: Add IP geolocation database lookup module 3 months ago
ipdb.h ipdb: Add IP geolocation database lookup module 3 months ago
logger.c session: Allow guest/signup/new logins to be mixed-case 4 months ago
logger.h logger: There will only be one, stop passing object around 11 months ago
mail.c session: Turn word wrap into paginator, use in boards+mail 5 months ago
mail.h mail: Add mail pruning 6 months ago
main.c main: Hook up ipdb 3 months ago
main_menu.c board+main_menu: Add ACTION_BOARD_LIST_BOARDS, fix bug in indexing 5 months ago
main_menu.h board+main_menu: Add ACTION_BOARD_LIST_BOARDS, fix bug in indexing 5 months ago
nomodem.c nomodem: Read upload data from ibuf in chunks to speed it up a little 5 months ago
nomodem.h nomodem: Read upload data from ibuf in chunks to speed it up a little 5 months ago
puff.c puff: Add small inflate module from zlib 7 months ago
puff.h puff: Add small inflate module from zlib 7 months ago
serial.c serial: Use logger for non-fatal warnings rather than modal warn() 4 months ago
serial_local.h serial: Start on serial modem support 1 year ago
session.c session: When breaking on spaces in session_paginate, drop space 1 month ago
session.h db: Add location field to session{,_log}, ipdb db path to config 3 months ago
settings.c settings+sysop: Fix bug in settings editor that can corrupt settings 1 month ago
settings.h settings: Make struct_editor use session_menu 6 months ago
sha1.c *: Move some big char buffers from the stack to the heap 1 year ago
sha1.h sha1: Import from OpenBSD 1 year ago
sha2.c sha1: Import from OpenBSD 1 year ago
sha2.h sha1: Import from OpenBSD 1 year ago
signup.c signup: Handle malloc and user_save failure 6 months ago
signup.h signup: Add interactive user account creation 1 year ago
strcasecmp.c strcasecmp: Add from OpenBSD 1 year ago
subtext.h main: Move periodic jobs and binkp polling to one thread here 6 months ago
subtext.π.r Rez: Fix FILES_MENU, add commented-out BOARD_LIST_BOARDS 4 months ago
sysop.c settings+sysop: Fix bug in settings editor that can corrupt settings 1 month ago
sysop.h session: Add session_menu, use it everywhere 1 year ago
tcp.c tcp: Add copyright header 5 months ago
tcp.h dnr: Don't require a pointer to a pointer for DNSResolveName 5 months ago
telnet.c telnet: Do ipdb lookup on connect, log location and store in session 3 months ago
telnet.h telnet: Remove local banning, just use UDP sending to trusted proxy 1 year ago
tetab.c settings: Move to interactive text-based menu for sysops 1 year ago
tetab.h settings: Start on settings windows 1 year ago
user.c user: Update username cache in user_find_by_username if no users 6 months ago
user.h user: Handle malloc failure 6 months ago
user_settings.c *: Add more prompt help strings 6 months ago
user_settings.h session: Don't set default terminal type, if node doesn't, prompt user 1 year ago
uthread.c uthread: Add uthread_wakeup 6 months ago
uthread.h uthread: Add uthread_wakeup 6 months ago
util.c util: In progress, if string looks like it will wrap, move text up 5 months ago
util.h util: getpath doesn't need a Str255 *, it's not allocating anything 6 months ago
zip.c zip: Make zip_read_file return an error code depending on failure 6 months ago
zip.h zip: Make zip_read_file return an error code depending on failure 6 months ago
zmodem.c zmodem: Set ZP0 to something in ZRINIT 4 months ago
zmodem.h *: Move some big char buffers from the stack to the heap 1 year ago

README
Subtext: a multi-user BBS server for Macintosh
Written by joshua stein <jcs@jcs.org> - http://jcs.org/subtext

Subtext is free software; see the LICENSE file for copyright/licensing.

Introduction
==================================================================
Subtext is a multi-user BBS server that is developed and runs on Macintosh
System 6 and above. It supports dialin access through a serial modem and
Telnet access through MacTCP. For full documentation, see the GUIDE file.

Support
==================================================================
Updates to Subtext are published on the Kludge BBS and can be downloaded
on the World Wide Web at http://jcs.org/subtext

For questions and support running a Subtext BBS, connect to the
Kludge BBS by Telnet/Web at klud.ge, or modem at +1-312-654-0090.

The source code for Subtext can also be found on AmendHub at
http://amendhub.com/jcs/subtext

Release History
==================================================================
2.0.1 - 2023-05-02
- Fix corrupted default menu options that prevented first launch
- Minor telnet and ZMODEM compatibility fixes

2.0 - 2023-05-01
- Add support for FTN (FidoNet) EchoMail and NetMail, with support for
fetching from and sending to a Binkp hub, including PKZIP archives
of packets
- Move mail to a separate database file for easier backup and less
chance of corrupting the user database
- Implement sysop paging/answering, which displays the user's message
on the screen with a beep
- Implement custom "NoModem" protocol for file transfers, used when a
host is connecting through the trusted host assuming this is a web
gateway
- List more items per screen in boards, files, and sysop, and change
input handler to collect multiple digits
- List newest mail first and a global setting to automatically prune
mail after a configurable amount of days
- Add option to sysop menu to forcefully hangup/reset the modem, and
an option to reboot the system
- Add timezone UTC offset setting, use to convert timestamps in FTN
messages to local timezone, and add a "timezone" template variable
- Add setting for separate maximum idle time for sysops (which can be
set to 0 to disable idling out sysop sessions)
- Mask password fields in sysop settings menu
- Add BOARD_LIST_BOARDS command for main menu, which lists all local
boards
- Faster session log pruning, and fix a bug where failed logins were
still being written to the session log
- Fix SHA1 checksum calculation for uploaded files and show occasional
progress during calculation
- Implement folder file description/notes editing and add an option for
sysop to recalculate SHA1 checksum before saving
- Try to handle malloc failures gracefully everywhere rather than exiting

1.1 - 2022-12-01
- Fix crash that could occur when more than one user is in chat, one user
quits chat, and then remaining users continue to chat
- Fix problem when running under non-MultiFinder where subsequent
runs would fail with errors opening board and folder databases because
they were not properly closed on the first run

1.0 - 2022-11-22
- Initial release!