[fpc-devel] Linux Binary - Socket Output affected by SystemCtl, HELP!
Ozz Nixon
ozznixon at gmail.com
Wed Jan 29 17:04:39 CET 2020
using the .sh concept:
# systemctl status coderunner
* coderunner.service - The Modern Pascal Code Running Socket Server
Loaded: loaded (/usr/lib/systemd/system/coderunner.service; enabled;
vendor preset: disabled)
Active: active (running) since Wed 2020-01-29 10:55:30 EST; 8s ago
Process: 18065 ExecStartPre=/usr/bin/rm -f /run/coderunner2.pid
(code=exited, status=0/SUCCESS)
Main PID: 18066 (coderunner2.sh)
CGroup: /system.slice/coderunner.service
|-18066 /bin/sh /usr/local/bin/coderunner2.sh
`-18069 /usr/local/bin/coderunner2
Jan 29 10:55:30 www.modernpascal.com systemd[1]: Starting The Modern Pascal
Code Running Socket Server...
Jan 29 10:55:30 www.modernpascal.com systemd[1]: Started The Modern Pascal
Code Running Socket Server.
So it starts - telnet 127.0.0.1 - and I get the ???? stuff still.
cat /etc/test.txt
<null>
ls -alrt /etc/test.txt
-rw-r--r-- 1 root root 0 Jan 29 10:54 /tmp/test.txt
chmod 777 just incase...
do not make a different, I even tried, bash, and even added starting...
#!/bin/bash
echo "Starting">>/tmp/test.txt
echo "LANG=$LANG" >>/tmp/test.txt
echo "LOCALE=$LOCALE" >>/tmp/test.txt
export LC_ALL=C
/usr/local/bin/coderunner2
Nothing writes to the file when systemctl starts it. However, if I
./coderunner2.sh I get:
Starting
LANG=en_US
LOCALE=
So, I guess try FPC 3.0.x???
On Wed, Jan 29, 2020 at 9:42 AM Nikolai Zhubr via fpc-devel <
fpc-devel at lists.freepascal.org> wrote:
> Hi!
>
> 29.01.2020 18:07, Ozz Nixon via fpc-devel:
> > 1. My code does not directly interact with any environment variables.
>
> Ok.
>
> > ExecStart=/usr/local/bin/coderunner2
>
> I'd suggest, as a quick and horrible temporary hack/test, replace this
> direct binary call with a shell wrapper, lets name it e.g.
> coderunner2.sh, containing something like:
>
> #!/bin/sh
> echo "LANG=$LANG" >>/tmp/test.txt
> echo "LOCALE=$LOCALE" >>/tmp/test.txt
> export LC_ALL=C
> /usr/local/bin/coderunner2
>
> (Put it into /usr/local/bin/ as otherwise systemd might refuse it; I
> suppose the script is simple enough to be self-explanatory)
>
> > 3. I do not see anything in that file that would override socket output.
>
> Sure.
>
> > 5. per wireshark, tcpdump (if the same) - it shows '?' is being sent
> > when the daemon is managed by systemctl, and the expected 8bit is sent
> > when ran at the shell prompt.
>
> That proves the problem is unrelated to sockets. Is is related to
> string/encoding handling.
>
>
> HTH...
>
> Regards,
> Nikolai
> _______________________________________________
> fpc-devel maillist - fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20200129/6ade5b54/attachment.html>
More information about the fpc-devel
mailing list