run_erl problem on RedHat ES 4

Serge Aleynikov <>
Thu Oct 13 14:02:07 CEST 2005


If this patch is included in the OTP distribution, I would like to 
request a feature to be able to customize the name of run_erl's 
"erlang.log.X" log files by introducing a new environment variable.

Thanks,

Serge

Ernie Makris wrote:
> This is what I use. Can the otp team include this in the next release? 
> Fedora run_erl is broken out of the box.
> Jouni Rynö originally sent a patch to me and I added a fix to it in 
> order to close the fds properly
> as it wasn't working on redhat or fedora.
> 
> Here it is:
> +++ run_erl.c   2005-10-07 15:19:00.000000000 -0400
> @@ -45,6 +45,8 @@
> #if !defined(NO_SYSLOG)
> #include <syslog.h>
> #endif
> +#include <pty.h>
> +#include <utmp.h>
> 
> #if defined(O_NONBLOCK)
> # define DONT_BLOCK_PLEASE O_NONBLOCK
> @@ -803,6 +805,7 @@
> static int open_pty_master(char **ptyslave)
> {
>   int mfd;
> +  int sfd;
>   char *major, *minor;
> 
>   static char majorchars[] = "pqrstuvwxyzabcdePQRSTUVWXYZABCDE";
> @@ -818,6 +821,15 @@
>   /* http://www.xcf.berkeley.edu/~ali/K0D/UNIX/PTY/code/upty.h.html */
> 
>   {
> +    static char ttyname[] = "                                   ";
> +    if (0 == openpty(&mfd, &sfd, ttyname, NULL, NULL)) {
> +      close(sfd);
> +      *ptyslave = ttyname;
> +      return mfd;
> +    }
> +  }
> +
> +  {
>     /* New style devpts or devfs /dev/pty/{m,s}{0,1....} */
> 
>     static char ptyname[] = "/dev/pty/mX";
> 
> You also have to modify the Makefile to add -lutil for the compilation 
> of run_erl.
> 
> Thanks
> Ernie
> 
> 
> ----- Original Message ----- From: "Serge Aleynikov" <>
> To: "Erlang Questions" <>
> Sent: Wednesday, October 12, 2005 2:29 PM
> Subject: run_erl problem on RedHat ES 4
> 
> 
>> OTP Team:
>>
>> We ran accross the following issue with run_erl:
>>
>> ~>cat /etc/redhat-release
>> Red Hat Enterprise Linux ES release 4 (Nahant)
>> ~>cat /proc/version
>> Linux version 2.6.9-5.ELsmp () 
>> (gcc version 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)) #1 SMP Wed Jan 5 
>> 19:30:39 EST 2005
>>
>> >erts-5.4.9/bin/run_erl var/tmp/test var/log/test "ls"
>> run_erl [17489] Wed Oct 12 14:25:11 2005
>> Could not open pty master
>>
>> Apparently this version of Linux doesn't have any /dev/pty devices 
>> installed:
>>
>> >ls -l /dev/p*
>> lrwxrwxrwx  1 root root      3 Aug 29 17:05 /dev/par0 -> lp0
>> crw-rw----  1 root lp    99, 0 Aug 29 13:04 /dev/parport0
>> crw-rw----  1 root lp    99, 1 Aug 29 13:04 /dev/parport1
>> crw-rw----  1 root lp    99, 2 Aug 29 13:04 /dev/parport2
>> crw-rw----  1 root lp    99, 3 Aug 29 13:04 /dev/parport3
>> crw-r-----  1 root kmem   1, 4 Aug 29 13:03 /dev/port
>> crw-------  1 root root 108, 0 Aug 29 13:04 /dev/ppp
>> crw-rw-rw-  1 root tty    5, 2 Oct 12 14:26 /dev/ptmx
>>
>> /dev/pts:
>> total 0
>> crw--w----  1 dkorsun tty 136, 0 Sep 20 18:02 0
>> crw--w----  1 dkorsun tty 136, 1 Oct 12 10:38 1
>> crw--w----  1 serge   tty 136, 2 Oct 12 14:26 2
>>
>> Is this an oversight in run_erl, or you could recommend a work-around?
>>
>> Thanks.
>>
>> -- 
>> Serge Aleynikov
>> R&D Telecom, IDT Corp.
>> Tel: (973) 438-3436
>> Fax: (973) 438-1464
>>  
> 
> 
> 
> 

-- 
Serge Aleynikov
R&D Telecom, IDT Corp.
Tel: (973) 438-3436
Fax: (973) 438-1464




More information about the erlang-questions mailing list