Main issueshttps://gitlab.synchro.net/groups/main/-/issues2022-07-06T12:06:09Zhttps://gitlab.synchro.net/main/sbbs/-/issues/418Expand @CENTER@ to include other @-codes2022-07-06T12:06:09ZNigel ReedExpand @CENTER@ to include other @-codesCurrently @CENTER@ ignores other @-codes.
Per IRC conversation, it may be possible to fix @CENTER@ to also parse other @c-codes.Currently @CENTER@ ignores other @-codes.
Per IRC conversation, it may be possible to fix @CENTER@ to also parse other @c-codes.https://gitlab.synchro.net/main/sbbs/-/issues/417text.dat - possible to split ansi top and bottom lines from MsgSubj and MsgDate?2022-07-02T19:01:09ZTrikestertext.dat - possible to split ansi top and bottom lines from MsgSubj and MsgDate?I'm trying to shuffle around the order of the subject, from, to, etc., in the message header, but it appears the top and bottom graphic lines surrounding the headers are tied to the Subject and Date lines.
I started trying to work on te...I'm trying to shuffle around the order of the subject, from, to, etc., in the message header, but it appears the top and bottom graphic lines surrounding the headers are tied to the Subject and Date lines.
I started trying to work on text.dat, and then exec/load/text.js to add in text lines for the top and bottom graphic header lines, but I think there's more to the picture than what I'm seeing (hardcoded items elsewhere, I guess)?https://gitlab.synchro.net/main/sbbs/-/issues/416xtrn.cpp mods for dosemu22022-07-03T12:08:29ZNigel Reedxtrn.cpp mods for dosemu2Can you please add the following to xtrn.cpp around line 1528 to support dosemu2. Not sure why these weren't included in the first place.
{(char*)"NODEDIR", cfg.node_dir},
{(char*)"EXECDIR...Can you please add the following to xtrn.cpp around line 1528 to support dosemu2. Not sure why these weren't included in the first place.
{(char*)"NODEDIR", cfg.node_dir},
{(char*)"EXECDIR", cfg.exec_dir},
{(char*)"DATADIR", cfg.data_dir},
{(char*)"XTRNDIR", xtrndir},https://gitlab.synchro.net/main/sbbs/-/issues/415Timed javascript events are being logged as 16bit dos2022-06-28T03:13:43ZNigel ReedTimed javascript events are being logged as 16bit dosJun 25 22:29:37 bbs synchronet: evnt DYNDNS Running 16-bit DOS timed event: DYNDNS
Jun 25 22:29:37 bbs synchronet: evnt DYNDNS Executing external: ?dyndns.js xxxxxxx
Jun 25 22:29:40 bbs synchronet: evnt SYNCRYPT Running 16-bit DOS time...Jun 25 22:29:37 bbs synchronet: evnt DYNDNS Running 16-bit DOS timed event: DYNDNS
Jun 25 22:29:37 bbs synchronet: evnt DYNDNS Executing external: ?dyndns.js xxxxxxx
Jun 25 22:29:40 bbs synchronet: evnt SYNCRYPT Running 16-bit DOS timed event: SYNCRYPT
Jun 25 22:29:40 bbs synchronet: evnt SYNCRYPT Executing external: ?letsyncrypt.js
Jun 25 22:31:37 bbs synchronet: evnt AVAT-IN Running 16-bit DOS timed event: AVAT-IN
Jun 25 22:31:37 bbs synchronet: evnt AVAT-IN Executing external: ?avatars import=dove-syncdata
etc..etc...https://gitlab.synchro.net/main/sbbs/-/issues/414avatar_chooser upload then quit stop mouse reponses2022-06-26T12:25:53ZNigel Reedavatar_chooser upload then quit stop mouse reponsesGo into the avatar chooser and click on "Upload an avatar". change your mind and click Q at the prompt and the menu no longer accepts mouse clicks. This is also true when using keyboard input to select the Upload option then Q. Both disa...Go into the avatar chooser and click on "Upload an avatar". change your mind and click Q at the prompt and the menu no longer accepts mouse clicks. This is also true when using keyboard input to select the Upload option then Q. Both disable the mouse until Q is pressed to quit and you're returned to the BBS.https://gitlab.synchro.net/main/sbbs/-/issues/413avatar chooser issues2022-06-26T12:25:53ZNigel Reedavatar chooser issuesI'll combine a couple of issues here since it's the same problem.
First, I don't have an avatar, and I don't want one. So when I click "I don't want an avatar" I get
avatar_chooser.js line 588: TypeError: bin is null
Same happens if I...I'll combine a couple of issues here since it's the same problem.
First, I don't have an avatar, and I don't want one. So when I click "I don't want an avatar" I get
avatar_chooser.js line 588: TypeError: bin is null
Same happens if I click "Edit your avatar".
Second issue.
If I click "Upload an avatar"
then change my mind and click Q
the mouse completely stops responding to clicks.https://gitlab.synchro.net/main/sbbs/-/issues/412Junk being sent to the terminal on mouse clicks2023-02-09T08:58:38ZNigel ReedJunk being sent to the terminal on mouse clicksI'm not even sure how to describe this so I'm going to do a video. Essentially, when clicking on a menu hotspot, junk from the mouseclick is sent, causing the program that was called to run then exit.
https://www.dropbox.com/s/cebs5xelo...I'm not even sure how to describe this so I'm going to do a video. Essentially, when clicking on a menu hotspot, junk from the mouseclick is sent, causing the program that was called to run then exit.
https://www.dropbox.com/s/cebs5xelosjeg2p/SyncTERM%20-%20%28AC%29%20EOTL%202022-06-21%2012-39-31.mp4?dl=0https://gitlab.synchro.net/main/sbbs/-/issues/411autoconf not found on Ubuntu even when installed2022-06-04T09:17:57ZNigel Reedautoconf not found on Ubuntu even when installedDuring compilation on Ubuntu:
```
git -C /home/bbs/sbbs-git/repo remote set-url origin https://gitlab.synchro.net/main/sbbs.git
echo MAKEFLAGS= os=linux RELEASE=1 | tr ' ' '\n' > /home/bbs/sbbs-git/repo/src/build/localdefs.mk
make -C /h...During compilation on Ubuntu:
```
git -C /home/bbs/sbbs-git/repo remote set-url origin https://gitlab.synchro.net/main/sbbs.git
echo MAKEFLAGS= os=linux RELEASE=1 | tr ' ' '\n' > /home/bbs/sbbs-git/repo/src/build/localdefs.mk
make -C /home/bbs/sbbs-git/repo/src/sbbs3 MAKEFLAGS= os=linux RELEASE=1 setcap
make[1]: Entering directory '/home/bbs/sbbs-git/repo/src/sbbs3'
diff: git_hash.h: No such file or directory
diff: git_branch.h: No such file or directory
make -C /home/bbs/sbbs-git/repo/src/sbbs3/../../3rdp/build jslib
make[2]: Entering directory '/home/bbs/sbbs-git/repo/3rdp/build'
Creating ../build/../../src/../3rdp/gcc.linux.x64.release/mozjs/lib/libmozjs185-1.0.a ...
patching file js/src/jsnativestack.cpp
patching file js-1.8.5/js/src/configure
patching file js-1.8.5/js/src/configure.in
patching file js-1.8.5/js/src/imacro_asm.py
patching file ./js-1.8.5/js/src/methodjit/MethodJIT.cpp
patching file js-1.8.5/js/src/jsutil.h
patching file js-1.8.5/js/src/configure.in
patching file js-1.8.5/js/src/build/autoconf/config.guess
patching file js-1.8.5/js/src/Makefile.in
/bin/sh: 1: autoconf-2.13: not found
```
This is because autoconf 2.13 is installed as autoconf2.13
bbs@test:~/sbbs-git$ which autoconf2.13
/usr/bin/autoconf2.13
The makefile should probably check for various versions, if it's actually important.https://gitlab.synchro.net/main/sbbs/-/issues/410References to node "rerun" should be replaced with "reload [configuration]"2022-05-25T21:45:04ZRob SwindellReferences to node "rerun" should be replaced with "reload [configuration]""Rerunning" a node hasn't been "a thing" since SBBS v2, so to end the confusion, update commands/docs to reflect that a node's configuration can be "reloaded", but that an BBS node is never really "rerun" (BBS nodes are executed in ephem..."Rerunning" a node hasn't been "a thing" since SBBS v2, so to end the confusion, update commands/docs to reflect that a node's configuration can be "reloaded", but that an BBS node is never really "rerun" (BBS nodes are executed in ephemeral threads that automatically die when the connection/session ends).Rob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/issues/409Nodes not showing as completing recycle after config changes2022-05-24T21:10:10ZKeyop TroyNodes not showing as completing recycle after config changesUsually after certain config changes, each node is marked as [R], until users have logged out and recycle takes place.
Today, after making config changes both myself and nelgin are seeing results like this:
Synchronet Node Display Modu...Usually after certain config changes, each node is marked as [R], until users have logged out and recycle takes place.
Today, after making config changes both myself and nelgin are seeing results like this:
Synchronet Node Display Module v1.12
Node 1: Waiting for connection
Node 2: Waiting for connection [R]
Node 3: Waiting for connection [R]
Node 4: Waiting for connection [R]
Node 5: Waiting for connection [R]
Node 6: Waiting for connection [R]
Node 7: Waiting for connection [R]
Node 8: Waiting for connection [R]
/opt/sbbs/exec/nodelist.js executed in 0.01 seconds
Both in the nodelist.js utility and umonitor.
Node 1 seems to be fine, nodes 2+ are stuck with the [R] status.
Running latest compiled code at the time of posting this issue.
Thoughts?https://gitlab.synchro.net/main/sbbs/-/issues/408ftp.js error2022-05-21T23:36:01ZKeyop Troyftp.js errorSeeing this in syslog:
May 21 06:43:32 lr08 synchronet[2362]: evnt QNET !JavaScript /sbbs/exec/load/ftp.js line 358: Error: Invalid response: 4
Any thoughts / suggestions?Seeing this in syslog:
May 21 06:43:32 lr08 synchronet[2362]: evnt QNET !JavaScript /sbbs/exec/load/ftp.js line 358: Error: Invalid response: 4
Any thoughts / suggestions?https://gitlab.synchro.net/main/sbbs/-/issues/407System password authentication duration is hard-coded to 15 minutes2023-02-10T13:06:23ZRob SwindellSystem password authentication duration is hard-coded to 15 minutesMake the system password authentication duration/timeout sysop-configurable.Make the system password authentication duration/timeout sysop-configurable.Rob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/issues/406List recent logons in Synchronet Control Panel2022-05-17T16:38:02ZRob SwindellList recent logons in Synchronet Control PanelFeature requested via DOVE-Net.
Parse data/logon.jsonl and display in a multi-column list view.Feature requested via DOVE-Net.
Parse data/logon.jsonl and display in a multi-column list view.Rob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/issues/405Configurable filename rejection for Archive.extract()2022-06-26T01:58:19ZRob SwindellConfigurable filename rejection for Archive.extract()Currently Archive.extract() will only extract/create files that use the "safest" filename characters. Add an option to specify a different allowed character set for more relaxed security.Currently Archive.extract() will only extract/create files that use the "safest" filename characters. Add an option to specify a different allowed character set for more relaxed security.Rob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/issues/404Enable modification of headers - specifically updating or assigning "tags" to...2023-05-08T12:06:48ZDeon GeorgeEnable modification of headers - specifically updating or assigning "tags" to a messageAs per the discussion in Synchronet Discussion, sometimes updating a tag (or more specifically assigning a tag to a message) fails as a result of insufficient header space (and if I understand correctly, the next block of space is alread...As per the discussion in Synchronet Discussion, sometimes updating a tag (or more specifically assigning a tag to a message) fails as a result of insufficient header space (and if I understand correctly, the next block of space is already allocated).
It would be ideal if the header was relocated to accommodate the tag (not sure if that is possible or reasonable), and thus assigning a value to the tag wouldn't be constrained to a pre-defined limit (as per below).
Alternatively, enable the sysop to "reserve" (additional) space for the header (eg: "x" chars), so when a tag is assigned a value, it is guaranteed to have space to store it (upto the size of "the reserved" (x) amount).https://gitlab.synchro.net/main/sbbs/-/issues/403Comments / intructions within sbbs.service are misleading2023-02-09T08:59:44ZKeyop TroyComments / intructions within sbbs.service are misleadingThe comments in sbbs.service:
# Synchronet BBS startup file - Setup instructions
#
# 1. Modify the environment variables to match your SBBS setup
# 2. Modify User and Group. If you run this as root you don't need
# the ExecStartPre line...The comments in sbbs.service:
# Synchronet BBS startup file - Setup instructions
#
# 1. Modify the environment variables to match your SBBS setup
# 2. Modify User and Group. If you run this as root you don't need
# the ExecStartPre line.
# 3. Modify the ExecStart and ExecStartPre paths to match your
# Synchronet setup.
# 4. Place this file in the correct location. For Ubuntu 16.04
# you should place it in /lib/systemd/system
# 5. Enable the service with "systemctl enable sbbs"
# 6. To run the service without restarting "systemctl start sbbs"
Are misleading (do not contain all of the required info to set up sbbs.service for a non root user).
Suggest comments are repalced with a link to the wiki:
- https://wiki.synchro.net/howto:systemdhttps://gitlab.synchro.net/main/sbbs/-/issues/402ircd "address in use" via systemd up on crash, fills log file2023-09-01T15:06:07ZNigel Reedircd "address in use" via systemd up on crash, fills log fileI have the following systemd service file for my ircd
```
[Unit]
Description=Synchronet ircd
After=syslog.target network.target
[Service]
Type=simple
User=bbs
Group=bbs
#ExecStart=/sbbs/exec/jsexec -L0 -a -c /sbbs/ctrl -l -o/var/log/sb...I have the following systemd service file for my ircd
```
[Unit]
Description=Synchronet ircd
After=syslog.target network.target
[Service]
Type=simple
User=bbs
Group=bbs
#ExecStart=/sbbs/exec/jsexec -L0 -a -c /sbbs/ctrl -l -o/var/log/sbbs/ircd.log -e/var/log/sbbs/ircd.err ircd
ExecStart=/sbbs/exec/jsexec -L7 -l /sbbs/exec/ircd.js
#StandardOutput=syslog
#StandardError=syslog
SyslogIdentifier=ircd
[Install]
WantedBy=multi-user.target
```
If the ircd crashes for some reason, it will spam the log files with:
```
Apr 26 01:51:05 bbs ircd[922629]: Re-running: /sbbs/exec/ircd.js
Apr 26 01:51:05 bbs ircd[922629]: SynchronetIRCd-1.9 started.
Apr 26 01:51:05 bbs ircd[922629]: Trying to read configuration from: /sbbs/ctrl/ircd.conf
Apr 26 01:51:05 bbs ircd[922629]: Creating new socket object on port 6667
Apr 26 01:51:05 bbs ircd[922629]: 0009 !ERROR 98 binding IRCd socket to port 6667: Address already in use
Apr 26 01:51:05 bbs ircd[922629]: !Error Error: Unable to add host to socket set creating listening socket on port 6667
Apr 26 01:51:05 bbs ircd[922629]: !Module (/sbbs/exec/ircd.js) set exit_code: 1
```
This messages repeats 5-7 times per second. Left unchecked it will fill up a log in pretty short order.
REUSEADDR = TRUE
in sockopts.ini
Need a fix so that the ircd will respawn.https://gitlab.synchro.net/main/sbbs/-/issues/401IMAPS error base64_decode2024-03-22T07:20:21ZKeyop TroyIMAPS error base64_decodeGetting this error in data/error.log
Tue Apr 26 23:04:44 2022 master/b75114da9
srvc 0749 IMAPS !JavaScript /sbbs/exec/imapservice.js line 891: TypeError: base64_decode(line) is nullGetting this error in data/error.log
Tue Apr 26 23:04:44 2022 master/b75114da9
srvc 0749 IMAPS !JavaScript /sbbs/exec/imapservice.js line 891: TypeError: base64_decode(line) is nullDeucеDeucеhttps://gitlab.synchro.net/main/sbbs/-/issues/400IRCd via JSEXEC crashes when run in environment without IPv62022-07-07T00:17:50ZMichael J. RyanIRCd via JSEXEC crashes when run in environment without IPv6When running ircd via SBBSEXEC in an environment without IPv6 (such as default docker configurations), the script crashes.
```
!IRCd ERROR -9 calling getaddrinfo() on ::
!Error Error: Unable to add host to socket set creating listening ...When running ircd via SBBSEXEC in an environment without IPv6 (such as default docker configurations), the script crashes.
```
!IRCd ERROR -9 calling getaddrinfo() on ::
!Error Error: Unable to add host to socket set creating listening socket on port 6667
!Module (/sbbs/exec/ircd.js) set exit_code: 1
```
I attempted to force a PLine entry (`P:0.0.0.0:::6667`), but still seeing the same error.
ASIDE: this also happens with SBBS executable as well, with default configuration, which is easy enough to change the sbbs.ini for.https://gitlab.synchro.net/main/sbbs/-/issues/399Support 31 line and 52 line door.sys file creation2022-04-24T19:00:25ZRob SwindellSupport 31 line and 52 line door.sys file creationSynchronet has always created the 52 line door.sys file, however, the original format was only 31 lines (e.g. https://github.com/wwivbbs/wwiv/wiki/DOOR.SYS-format). Since some of the additional fields might cause some door programs/frame...Synchronet has always created the 52 line door.sys file, however, the original format was only 31 lines (e.g. https://github.com/wwivbbs/wwiv/wiki/DOOR.SYS-format). Since some of the additional fields might cause some door programs/frameworks to choke, a configuration option (per door) to only generate a 31-line file could be useful.Rob SwindellRob Swindell