Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
Synchronet
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Main
Synchronet
Commits
02e06427
Commit
02e06427
authored
4 years ago
by
Rob Swindell
Browse files
Options
Downloads
Patches
Plain Diff
Cosmetic fixes/improvements.
parent
7ea751f7
Branches
Branches containing commit
Tags
Tags containing commit
No related merge requests found
Pipeline
#69
passed
4 years ago
Stage: build
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/sbbs3/scfg/scfgnet.c
+34
-14
34 additions, 14 deletions
src/sbbs3/scfg/scfgnet.c
src/sbbs3/scfg/scfgsys.c
+50
-37
50 additions, 37 deletions
src/sbbs3/scfg/scfgsys.c
with
84 additions
and
51 deletions
src/sbbs3/scfg/scfgnet.c
+
34
−
14
View file @
02e06427
...
...
@@ -225,7 +225,7 @@ void net_cfg()
"`QWK Network Hubs:`
\n
"
"
\n
"
"This is a list of QWK network hubs that your system calls to exchange
\n
"
"packets with.
\n
"
"
message
packets with.
\n
"
"
\n
"
"To add a hub, select the desired location with the arrow keys and hit
\n
"
"~ INS ~.
\n
"
...
...
@@ -245,7 +245,7 @@ void net_cfg()
"`QWK Network Hub System ID:`
\n
"
"
\n
"
"This is the QWK System ID of this hub. It is used for incoming and
\n
"
"outgoing network packets and must be accurate.
\n
"
"outgoing network
message
packets and must be accurate.
\n
"
;
if
(
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
"System ID"
,
str
,
LEN_QWKID
,
K_UPPER
)
<
1
)
...
...
@@ -444,6 +444,9 @@ void net_cfg()
"This is a filename that will be used as a semaphore (signal) to your
\n
"
"FidoNet front-end that new NetMail has been created and the messages
\n
"
"should be re-scanned.
\n
"
"
\n
"
"`Command-line specifiers may be included in the semaphore filename.`
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
"NetMail Semaphore"
,
cfg
.
netmail_sem
,
sizeof
(
cfg
.
netmail_sem
)
-
1
,
K_EDIT
);
...
...
@@ -455,6 +458,9 @@ void net_cfg()
"This is a filename that will be used as a semaphore (signal) to your
\n
"
"FidoNet front-end that new EchoMail has been created and the messages
\n
"
"should be re-scanned.
\n
"
"
\n
"
"`Command-line specifiers may be included in the semaphore filename.`
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
"EchoMail Semaphore"
,
cfg
.
echomail_sem
,
sizeof
(
cfg
.
echomail_sem
)
-
1
,
K_EDIT
);
...
...
@@ -470,7 +476,7 @@ void net_cfg()
,
cfg
.
netmail_dir
,
sizeof
(
cfg
.
netmail_dir
)
-
1
,
K_EDIT
);
break
;
case
5
:
i
=
0
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_ALLOW
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Allow Users to Send NetMail:`
\n
"
"
\n
"
...
...
@@ -489,7 +495,7 @@ void net_cfg()
}
break
;
case
6
:
i
=
0
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_FILE
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Allow Users to Send NetMail File Attachments:`
\n
"
"
\n
"
...
...
@@ -508,7 +514,7 @@ void net_cfg()
}
break
;
case
7
:
i
=
1
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_ALIAS
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Use Aliases in NetMail:`
\n
"
"
\n
"
...
...
@@ -529,7 +535,7 @@ void net_cfg()
}
break
;
case
8
:
i
=
1
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_CRASH
)
?
0
:
1
;
uifc
.
helpbuf
=
"`NetMail Defaults to Crash Status:`
\n
"
"
\n
"
...
...
@@ -548,7 +554,7 @@ void net_cfg()
}
break
;
case
9
:
i
=
1
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_DIRECT
)
?
0
:
1
;
uifc
.
helpbuf
=
"`NetMail Defaults to Direct Status:`
\n
"
"
\n
"
...
...
@@ -567,7 +573,7 @@ void net_cfg()
}
break
;
case
10
:
i
=
1
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_HOLD
)
?
0
:
1
;
uifc
.
helpbuf
=
"`NetMail Defaults to Hold Status:`
\n
"
"
\n
"
...
...
@@ -586,7 +592,7 @@ void net_cfg()
}
break
;
case
11
:
i
=
0
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_KILL
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Kill NetMail After it is Sent:`
\n
"
"
\n
"
...
...
@@ -618,7 +624,7 @@ void net_cfg()
cfg
.
netmail_cost
=
atol
(
str
);
break
;
case
13
:
i
=
0
;
i
=
(
cfg
.
netmail_misc
&
NMAIL_CHSRCADDR
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Choose NetMail Source Address:`
\n
"
"
\n
"
...
...
@@ -694,6 +700,9 @@ void net_cfg()
"This is a filename that will be used as a semaphore (signal) to any
\n
"
"external Internet e-mail processors that new mail has been received
\n
"
"and the message base should be re-scanned.
\n
"
"
\n
"
"`Command-line specifiers may be included in the semaphore filename.`
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
"Inbound Semaphore"
,
cfg
.
smtpmail_sem
,
sizeof
(
cfg
.
smtpmail_sem
)
-
1
,
K_EDIT
);
...
...
@@ -705,12 +714,15 @@ void net_cfg()
"This is a filename that will be used as a semaphore (signal) to any
\n
"
"external Internet gateways (if supported) that new mail has been created
\n
"
"and the message base should be re-scanned.
\n
"
"
\n
"
"`Command-line specifiers may be included in the semaphore filename.`
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
"Outbound Semaphore"
,
cfg
.
inetmail_sem
,
sizeof
(
cfg
.
inetmail_sem
)
-
1
,
K_EDIT
);
break
;
case
3
:
i
=
0
;
i
=
(
cfg
.
inetmail_misc
&
NMAIL_ALLOW
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Allow Users to Send Internet E-mail:`
\n
"
"
\n
"
...
...
@@ -729,7 +741,7 @@ void net_cfg()
}
break
;
case
4
:
i
=
0
;
i
=
(
cfg
.
inetmail_misc
&
NMAIL_FILE
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Allow Users to Send Internet E-mail File Attachments:`
\n
"
"
\n
"
...
...
@@ -748,7 +760,7 @@ void net_cfg()
}
break
;
case
5
:
i
=
1
;
i
=
(
cfg
.
inetmail_misc
&
NMAIL_ALIAS
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Use Aliases in Internet E-mail:`
\n
"
"
\n
"
...
...
@@ -769,7 +781,7 @@ void net_cfg()
}
break
;
case
6
:
i
=
0
;
i
=
(
cfg
.
inetmail_misc
&
NMAIL_KILL
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Kill Internet E-mail After it is Sent:`
\n
"
"
\n
"
...
...
@@ -879,6 +891,11 @@ void qhub_edit(int num)
"found in Kludge Lines and also addresses the 25-character QWK field
\n
"
"length limits. HEADERS.DAT is supported in Synchronet v3.15 and later.
\n
"
"
\n
"
"Synchronet v3.18 and later supports `UTF-8` encoded messages within QWK
\n
"
"packets. If the hub is using Synchronet v3.18 or later, set this option
\n
"
"to `Yes`. This option also changes the QWK new-line sequence to the ASCII
\n
"
"LF (10) character instead of the traditional QWK newline byte (227).
\n
"
"
\n
"
"`Extended (QWKE) Packets` are not normally used in QWK Networking.
\n
"
"Setting this to `Yes` enables some QWKE-specific Kludge Lines that are
\n
"
"superfluous when the HEADERS.DAT file is supported and used.
\n
"
...
...
@@ -920,6 +937,7 @@ void qhub_edit(int num)
"
\n
"
"This is the command line to use to create (compress) REP packets for
\n
"
"this QWK network hub.
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
""
,
cfg
.
qhub
[
num
]
->
pack
,
sizeof
(
cfg
.
qhub
[
num
]
->
pack
)
-
1
,
K_EDIT
);
...
...
@@ -930,6 +948,7 @@ void qhub_edit(int num)
"
\n
"
"This is the command line to use to extract (decompress) QWK packets from
\n
"
"this QWK network hub.
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
""
,
cfg
.
qhub
[
num
]
->
unpack
,
sizeof
(
cfg
.
qhub
[
num
]
->
unpack
)
-
1
,
K_EDIT
);
...
...
@@ -940,6 +959,7 @@ void qhub_edit(int num)
"
\n
"
"This is the command line to use to initiate a call-out to this QWK
\n
"
"network hub.
\n
"
SCFG_CMDLINE_SPEC_HELP
;
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
""
,
cfg
.
qhub
[
num
]
->
call
,
sizeof
(
cfg
.
qhub
[
num
]
->
call
)
-
1
,
K_EDIT
);
...
...
This diff is collapsed.
Click to expand it.
src/sbbs3/scfg/scfgsys.c
+
50
−
37
View file @
02e06427
...
...
@@ -410,7 +410,7 @@ void sys_cfg(void)
uifc
.
input
(
WIN_MID
,
0
,
0
,
"System Password"
,
cfg
.
sys_pass
,
sizeof
(
cfg
.
sys_pass
)
-
1
,
K_EDIT
|
K_UPPER
);
break
;
case
5
:
i
=
1
;
i
=
(
cfg
.
sys_misc
&
SM_PWEDIT
)
?
0
:
1
;
uifc
.
helpbuf
=
"`Allow Users to Change Their Password:`
\n
"
"
\n
"
...
...
@@ -428,26 +428,26 @@ void sys_cfg(void)
cfg
.
sys_misc
&=~
SM_PWEDIT
;
uifc
.
changes
=
1
;
}
i
=
0
;
i
=
cfg
.
sys_pwdays
?
0
:
1
;
uifc
.
helpbuf
=
"`Force Periodic Password
uifc.changes
:`
\n
"
"`Force Periodic
New
Password:`
\n
"
"
\n
"
"If you want your users to be forced to
c
ha
nge their passwords
\n
"
"
periodically,
select `Yes`.
\n
"
"If you want your users to be forced to ha
ve a new password periodically,
\n
"
"select `Yes`.
\n
"
;
i
=
uifc
.
list
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
0
,
&
i
,
0
,
"Force Periodic Password
Changes"
,
o
pt
);
,
"Force Periodic
New
Password
"
,
uifcYesNoO
pt
s
);
if
(
!
i
)
{
ultoa
(
cfg
.
sys_pwdays
,
str
,
10
);
uifc
.
helpbuf
=
"`Maximum Days Between Password
uifc.change
s:`
\n
"
"`Maximum Days Between
New
Passwords:`
\n
"
"
\n
"
"Enter the maximum number of days allowed between password
uifc.
changes.
\n
"
"Enter the maximum number of days allowed between password changes.
\n
"
"If a user has not voluntarily changed his or her password in this
\n
"
"many days, he or she will be forced to change their password upon
\n
"
"logon.
\n
"
;
uifc
.
input
(
WIN_MID
,
0
,
0
,
"Maximum Days Between Password
Changes
"
uifc
.
input
(
WIN_MID
,
0
,
0
,
"Maximum Days Between
New
Password"
,
str
,
5
,
K_NUMBER
|
K_EDIT
);
cfg
.
sys_pwdays
=
atoi
(
str
);
}
...
...
@@ -476,7 +476,7 @@ void sys_cfg(void)
uifc
.
helpbuf
=
"`Maximum Days of Inactivity Before Auto-Deletion:`
\n
"
"
\n
"
"If you want users that have
n'
t logged
on in certain period of time to
\n
"
"If you want users that have
no
t logged
-
on in
a
certain period of time to
\n
"
"be automatically deleted, set this value to the maximum number of days
\n
"
"of inactivity before the user is deleted. Setting this value to `0`
\n
"
"disables this feature.
\n
"
...
...
@@ -491,9 +491,9 @@ void sys_cfg(void)
uifc
.
helpbuf
=
"`New User Password:`
\n
"
"
\n
"
"If you want callers to only be able to logon as `New` if they know
a
\n
"
"
certain
password, enter that password here. If you
want
any caller
to
\n
"
"be able to logon as New, leave this option blank.
\n
"
"If you want callers to only be able to logon as `New`
~ only ~
if they know
\n
"
"
a secret
password, enter that password here.
If you
prefer
any caller
\n
"
"be able to logon as
`
New
`
, leave this option blank.
\n
"
;
uifc
.
input
(
WIN_MID
,
0
,
0
,
"New User Password"
,
cfg
.
new_pass
,
sizeof
(
cfg
.
new_pass
)
-
1
,
K_EDIT
|
K_UPPER
);
...
...
@@ -612,7 +612,8 @@ void sys_cfg(void)
uifc
.
helpbuf
=
"`Allow Sysop Logins:`
\n
"
"
\n
"
"If you want to be able to login with sysop access, set this option to `Yes`.
\n
"
"If you want to be able to login with system operator access, set this
\n
"
"option to `Yes`.
\n
"
;
i
=
uifc
.
list
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
0
,
&
i
,
0
,
"Allow Sysop Logins"
,
uifcYesNoOpts
);
...
...
@@ -952,6 +953,8 @@ void sys_cfg(void)
"`New User Exemption Flags:`
\n
"
"
\n
"
"These are the exemptions that are automatically given to new users.
\n
"
"
\n
"
"See `http://wiki.synchro.net/access:exemptions` for details.
\n
"
;
uifc
.
input
(
WIN_SAV
|
WIN_MID
,
0
,
0
,
"Exemption Flags"
,
str
,
26
,
K_EDIT
|
K_UPPER
|
K_ALPHA
);
...
...
@@ -963,6 +966,8 @@ void sys_cfg(void)
"`New User Restriction Flags:`
\n
"
"
\n
"
"These are the restrictions that are automatically given to new users.
\n
"
"
\n
"
"See `http://wiki.synchro.net/access:restrictions` for details.
\n
"
;
uifc
.
input
(
WIN_SAV
|
WIN_MID
,
0
,
0
,
"Restriction Flags"
,
str
,
26
,
K_EDIT
|
K_UPPER
|
K_ALPHA
);
...
...
@@ -1084,8 +1089,8 @@ void sys_cfg(void)
"settings on this menu. The user can then change them to his or her
\n
"
"liking.
\n
"
"
\n
"
"See the Synchronet User Manual
for more information on the individual
\n
"
"options available.
\n
"
"See the Synchronet User Manual
(`http://synchro.net/docs/user.html`)
\n
"
"
for more information on the individual
options available.
\n
"
;
j
=
0
;
k
=
0
;
...
...
@@ -1128,7 +1133,7 @@ void sys_cfg(void)
,
"Auto Hang-up After Xfer"
,
cfg
.
new_misc
&
AUTOHANG
?
"Yes"
:
"No"
);
opt
[
i
][
0
]
=
0
;
j
=
uifc
.
list
(
WIN_BOT
|
WIN_RHT
,
2
,
1
,
0
,
&
j
,
&
k
j
=
uifc
.
list
(
WIN_BOT
|
WIN_RHT
|
WIN_SAV
,
2
,
1
,
0
,
&
j
,
&
k
,
"Default Toggle Options"
,
opt
);
if
(
j
==-
1
)
break
;
...
...
@@ -1240,7 +1245,7 @@ void sys_cfg(void)
,
"Color Terminal"
,
cfg
.
uq
&
UQ_COLORTERM
?
"Yes"
:
"No"
);
opt
[
i
][
0
]
=
0
;
j
=
uifc
.
list
(
WIN_BOT
|
WIN_RHT
,
2
,
1
,
0
,
&
j
,
&
k
j
=
uifc
.
list
(
WIN_BOT
|
WIN_RHT
|
WIN_SAV
,
2
,
1
,
0
,
&
j
,
&
k
,
"New User Questions"
,
opt
);
if
(
j
==-
1
)
break
;
...
...
@@ -1374,7 +1379,7 @@ void sys_cfg(void)
"Think of it as a password to guarantee that new users read the text
\n
"
"displayed to them.
\n
"
;
uifc
.
input
(
WIN_MID
,
0
,
0
,
"New User Magic Word"
,
cfg
.
new_magic
,
sizeof
(
cfg
.
new_magic
)
-
1
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
,
"New User Magic Word"
,
cfg
.
new_magic
,
sizeof
(
cfg
.
new_magic
)
-
1
,
K_EDIT
|
K_UPPER
);
break
;
case
1
:
...
...
@@ -1385,6 +1390,8 @@ void sys_cfg(void)
"This directory must be located where `ALL` nodes can access it and
\n
"
"`MUST NOT` be placed on a RAM disk or other volatile media.
\n
"
"
\n
"
"See `http://wiki.synchro.net/dir:data` for details.
\n
"
"
\n
"
"This option allows you to change the location of your data directory.
\n
"
;
strcpy
(
str
,
cfg
.
data_dir
);
...
...
@@ -1399,6 +1406,8 @@ void sys_cfg(void)
"`Log File Directory:`
\n
"
"
\n
"
"Log files will be stored in this directory.
\n
"
"
\n
"
"By default, this is set to the same as your Data File directory.
\n
"
;
strcpy
(
str
,
cfg
.
logs_dir
);
if
(
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
9
,
"Logs Directory"
...
...
@@ -1411,12 +1420,15 @@ void sys_cfg(void)
uifc
.
helpbuf
=
"`Executable/Module File Directory:`
\n
"
"
\n
"
"The Synchronet exec directory contains executable files that your BBS
\n
"
"executes. This directory does `not` need to be in your DOS search path.
\n
"
"The Synchronet exec directory contains program and script files that the
\n
"
"BBS executes. This directory does `not` need to be in your OS search path.
\n
"
"
\n
"
"If you place programs in this directory for the BBS to execute, you
\n
"
"should place the `%!`
abbreviation
for the exec directory at the
\n
"
"should place the `%!`
specifier
for the
`
exec
`
directory at the
\n
"
"beginning of the configured command-lines.
\n
"
"
\n
"
"See `http://wiki.synchro.net/dir:exec` for details.
\n
"
"
\n
"
"This option allows you to change the location of your exec directory.
\n
"
;
strcpy
(
str
,
cfg
.
exec_dir
);
...
...
@@ -1431,12 +1443,17 @@ void sys_cfg(void)
"`Modified Modules Directory:`
\n
"
"
\n
"
"This optional directory can be used to specify a location where modified
\n
"
"module files are stored. These modified modules will take precedence over
\n
"
"stock modules with the same filename (in the exec directory) and will
\n
"
"not be overwritten by future updates/upgrades.
\n
"
"module files are stored. These modified modules will take precedence
\n
"
"over modules with the same filename (in the `exec` directory) and will
\n
"
"`not be overwritten` by future updates/upgrades.
\n
"
"
\n
"
"Sub-directory searches of this directory also take precedence
\n
"
"(e.g. `mods/load/*` overrides `exec/load/*`).
\n
"
"
\n
"
"If this directory is `blank`, then this feature is not used and all modules
\n
"
"are assumed to be located in the `exec` directory.
\n
"
"If this directory is `blank`, then this feature is not used and all
\n
"
"modules are assumed to be located in the `exec` directory.
\n
"
"
\n
"
"See `http://wiki.synchro.net/dir:mods` for details.
\n
"
;
strcpy
(
str
,
cfg
.
mods_dir
);
if
(
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
9
,
"Mods Directory"
...
...
@@ -1483,9 +1500,9 @@ void sys_cfg(void)
"
\n
"
"This is the monetary value of a credit (How many credits per dollar).
\n
"
"This value should be a power of 2 (1, 2, 4, 8, 16, 32, 64, 128, etc.)
\n
"
"since credits are usually converted
by
100 ki
lo
byte (102400) blocks.
\n
"
"To make a dollar worth two me
ga
bytes of credits, set this value to
\n
"
"2,097,152 (a me
ga
byte is 1024*1024 or 1048576).
\n
"
"since credits are usually converted
in
100 ki
bi
byte (102400) blocks.
\n
"
"To make a dollar worth two me
bi
bytes of credits, set this value to
\n
"
"2,097,152 (a me
bi
byte is 1024*1024 or 1048576).
\n
"
;
ultoa
(
cfg
.
cdt_per_dollar
,
str
,
10
);
uifc
.
input
(
WIN_MID
|
WIN_SAV
,
0
,
0
...
...
@@ -1668,15 +1685,15 @@ void sys_cfg(void)
"`Scan Msgs` Executed when a user reads or scans a message sub-board
\n
"
"`Scan Subs` Executed when a user scans one or more sub-boards for msgs
\n
"
"`List Msgs` Executed when a user lists msgs from the msg read prompt
\n
"
"`List Logons` Executed when a user lists logons (
i.e.
'-y' for yesterday)
\n
"
"`List Logons` Executed when a user lists logons ('-y' for yesterday)
\n
"
"`List Nodes` Executed when a user lists all nodes
\n
"
"`Who's Online` Executed when a user lists the nodes in-use (e.g. `^U`)
\n
"
"`Private Msg` Executed when a user sends a private node msg (e.g. `^P`)
\n
"
"
\n
"
"`Note:` JavaScript modules take precedence over Baja modules if both exist
\n
"
"in your `exec` or `mods` directories.
\n
"
"
in your `exec` or `mods` directories.
\n
"
;
switch
(
uifc
.
list
(
WIN_ACT
|
WIN_T2B
|
WIN_RHT
,
0
,
0
,
32
,
&
k
,
0
switch
(
uifc
.
list
(
WIN_ACT
|
WIN_T2B
|
WIN_RHT
,
0
,
0
,
40
,
&
k
,
0
,
"Loadable Modules"
,
opt
))
{
case
-
1
:
...
...
@@ -2060,10 +2077,6 @@ void sys_cfg(void)
"user's expiration date may be extended and additional credits may also
\n
"
"be added using quick-validation sets.
\n
"
"
\n
"
"Holding down ~ ALT ~ and one of the number keys (`1-9`) while a user
\n
"
"is online, automatically sets his or user security values to the
\n
"
"quick-validation set for that number key.
\n
"
"
\n
"
"From within the `User Edit` function, a sysop can use the `V`alidate
\n
"
"User command and select from this quick-validation list to change a
\n
"
"user's security values with very few key-strokes.
\n
"
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment