re: Efax: can't rename lockfile ...
> efax: 01:09 Warning: local ID (0331-461310) has non-standard characters
> efax: 01:09 removed stale lock /var/lock/LCK..ttyS1 from pid 1249
> efax: 01:09 Error: can't rename lock file TMP..01274 to : No such file or
I believe there is a bug in efax. After I discovered this, I got sidetracted
and later neglected to file a bug report. The way I fixed the problem was to
recompile efax. In efax.c function main(), lkfile (array of lockfiles) is:
char *icmd[3][ MAXICMD ], *lkfile [ MAXLKFILE+1 ] ;
Later, assignments to lkfile are made:
case 'x':
if ( nlkfile < MAXLKFILE ) lkfile [ nlkfile++ ] = nxtoptarg ;
else err = msg ( "E2too many lock files" ) ;
break ;
Then lkfile is passed as an argument to some routines (begin_session()
and answer()) where it is tested as a null terminated list of lockfiles.
I could not see where lkfile had been properly null terminated, so I
added a line to efax.c (about line 2076) and recompiled:
lkfile[nlkfile] = NULL;
This fixed it for me, but note that if you need efax and decide to try this
on a Debian box, you must apply the Debian patches and define DEBIAN for the
make. (eg: make 'CFLAGS= -O -DDEBIAN')
At the time I wondered how efax could ever have worked for anybody. Now I
wonder why I never filed a bug report. Sorry, but I will now.
-----------------------------------------------------------------------------
Bill Wilson <billw@wt.net>
Reply to: