I have installed ScarletDME using " ScarletDME installer" from
https://github.com/dmontaine/ScarletDME64_Installer on a Linux-Mint-21-Victoria box.
I did this test
1) run qm in the home directory of my user (/home/aigor) -> OK
2) telnet localhost 4242 -> FAIL
The telnet file with following messages
**** [BEGIN-TELNET-SNIPPET] ****
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
[ ScarletDME Rev 2.6-6 Copyright Ladybridge Systems, 2007 ]
Welcome to ScarletDME! Multi-Value for the masses, not the classes.
This program is free software and is supplied with ABSOLUTELY NO WARRANTY.
You are welcome to modify or redistribute this software subject to certain
conditions. For details type CONFIG GPL.
Telnet connection from 0.0.0.0
Username: aigor
Password: *********
Invalid username or password
**** [END-TELNET-SNIPPET] ****
So I gave this command in a ScarletDME session running as ADMIN
SECURITY OFF
Then I telnet again
3) telnet localhost 4242 -> OK
**** [BEGIN-TELNET-SNIPPET] ****
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
[ ScarletDME Rev 2.6-6 Copyright Ladybridge Systems, 2007 ]
Welcome to ScarletDME! Multi-Value for the masses, not the classes.
This program is free software and is supplied with ABSOLUTELY NO WARRANTY.
You are welcome to modify or redistribute this software subject to certain
conditions. For details type CONFIG GPL.
Telnet connection from 0.0.0.0
Account: AIGOR
:
**** [END-TELNET-SNIPPET] ****
I think the problem is in the LOGIN and/or _LOGIN programs more or less here:
[BEGIN-SNIPPET-FROM-LINE-314-OF-LOGIN]
if
lgn.id[1,1] # '$' then ;* Names cannot start with $
if login(
lgn.id, password) then
logname =
lgn.id * Get any saved account data for this user
read lgn.rec from lgn.f,
lgn.id else
if security.rec<1> then
* To get here, we must be running an NT or Linux
* system, the user is not in the $LOGINS register and
* the security system is on. Reject this connection.
display sysmsg(5009) ;* This user is not registered for QM use
goto terminate.connection
end
end
exit
end
end
display sysmsg(5017) ;* Invalid username or password
sleep 3
[END-SNIPPET-FROM-LINE-314-OF-LOGIN]
I suppose that the call to "login(
lgn.id, password)" in the second line of the snippet
refers to the function login defined in _LOGIN
[BEGIN-SNIPPET-FROM-_LOGIN]
* _LOGIN
* Check username and password using own validation system.
[END-SNIPPET-FROM-_LOGIN]
I suppose that this login function is not integrated with the validation system of Linux.
I don't know how to fix this (but I can work this around by disabling the security).
Can someone with more expertise take a look at this?
MfG