I think I have a fix... (Mark and Willi, I've cc'd to you cause I know
you were having the same problem and this list seems incredibly slow!)
In lpd_rcvjob.c, Set_hold_file() is called in Check_for_missing_files
with holdfile_fd as the arg. However, this doesn't make any effort to
check for whether holdfile_fd is legit or not, and Set_hold_file doesn't
appear to be able to handle the case of fd=-1.
I simply wrapped the call to shf with a if (holdfile_fd > 0) {}.
I would sure appreciate if Patrick or someone else with a deeper
understanding of the code could verify this...
Note - this fixes my symptom with or without Patrick's other suggested
fix to .26, which apparently doesn't work for several others either.
--- lpd_rcvjob.c.orig 2004-04-16 11:00:32.000000000 -0500
+++ lpd_rcvjob.c 2004-04-16 11:01:16.000000000 -0500
@@ -1310,11 +1310,14 @@
Generate_control_file( job );
}
- if( (status = Set_hold_file( job, 0, holdfile_fd )) ){
- SNPRINTF( error,errlen)
- "error setting up hold file - %s",
- Errormsg( errno ) );
- goto error;
+ if ( holdfile_fd > 0 )
+ {
+ if( (status = Set_hold_file( job, 0, holdfile_fd )) ){
+ SNPRINTF( error,errlen)
+ "error setting up hold file - %s",
+ Errormsg( errno ) );
+ goto error;
+ }
}
if(DEBUGL1)Dump_job("Check_for_missing_files - ending", job );
-- Nathan
------------------------------------------------------------
Nathan Neulinger EMail: [EMAIL PROTECTED]
University of Missouri - Rolla Phone: (573) 341-6679
UMR Information Technology Fax: (573) 341-4216
> -----Original Message-----
> From: Neulinger, Nathan
> Sent: Friday, April 16, 2004 10:16 AM
> To: '[EMAIL PROTECTED]'
> Subject: RE: LPRng: LOGIC ERROR - no HF_NAME in job info
>
> After a whole lot of diagnostic tracing, it appears to me
> that the hf_name is being added to the job in the call to
> Setup_temporary_hold_file() in lpd_rcvjobs.c, but I'm not
> understanding enough of what is supposed to be happening to
> know why this isn't working right. I have full debug traces
> if they are helpful.
>
>
> ------------------------------------------------------------
> Nathan Neulinger EMail: [EMAIL PROTECTED]
> University of Missouri - Rolla Phone: (573) 341-6679
> UMR Information Technology Fax: (573) 341-4216
>
>
> > -----Original Message-----
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
> > Behalf Of Neulinger, Nathan
> > Sent: Wednesday, April 14, 2004 5:11 PM
> > To: [EMAIL PROTECTED]
> > Subject: LPRng: LOGIC ERROR - no HF_NAME in job info
> >
> > I've read the list and have tried the various patches with no
> > success...
> > This is happening 100% consistent on receipt of a job from a
> > remote AIX
> > lpd.
> >
> > This is what the hf file contains:
> >
> > -----
> > [EMAIL PROTECTED]
> > C=iprint
> > cftransfername=cfI148iprint
> > D=2004-04-14-17:00:54.688
> > datafile_count=1
> > file_hostname=iprint
> > filenames=STDIN.53674
> > H=iprint
> > held=0x0
> > hf_name=hfA148
> > hfdatafiles=copies=0x1^Bdftransfername=dfA148iprint^Bformat=f^
> > BN=STDIN.5
> > 3674^Bsize=3408^A
> > hold_class=0x0
> > hold_time=0x0
> > J=STDIN.53674
> > job_time=0x407db496
> > job_time_usec=0xa570c
> > L=root
> > number=148
> > P=root
> > priority=I
> > Q=cs110
> > remotehost=iprint.umsystem.edu
> > remoteport=0x3ff
> > size=3408
> > unixsocket=0x0
> > update_time=2004-04-14-17:00:54.689
> > -----------------------
> >
> >
> > That line with the control-B's looks odd to me. As you can
> see though,
> > hf_name is present. This happens after submitting the job to a
> > completely empty queue on a clean install of 3.8.26.
> >
> >
> > I've got this reproduced on a test server, so I'll be happy
> to try any
> > patches/etc. you'd like me to try.
> >
> > ------------------------------------------------------------
> > Nathan Neulinger EMail: [EMAIL PROTECTED]
> > University of Missouri - Rolla Phone: (573) 341-6679
> > UMR Information Technology Fax: (573) 341-4216
> >
> >
> > --------------------------------------------------------------
> > ---------------
> > YOU MUST BE A LIST MEMBER IN ORDER TO POST TO THE LPRNG MAILING LIST
> > The address you post from MUST be your subscription address
> >
> > If you need help, send email to [EMAIL PROTECTED] (or
> lprng-requests
> > or lprng-digest-requests) with the word 'help' in the body.
> > For the impatient,
> > to subscribe to a list with name LIST, send mail to
> > [EMAIL PROTECTED]
> > with: | example:
> > subscribe LIST <mailaddr> | subscribe lprng-digest
> > [EMAIL PROTECTED]
> > unsubscribe LIST <mailaddr> | unsubscribe lprng [EMAIL PROTECTED]
> >
> > If you have major problems, send email to
> > [EMAIL PROTECTED] with the word
> > LPRNGLIST in the SUBJECT line.
> > --------------------------------------------------------------
> > ---------------
> >
-----------------------------------------------------------------------------
YOU MUST BE A LIST MEMBER IN ORDER TO POST TO THE LPRNG MAILING LIST
The address you post from MUST be your subscription address
If you need help, send email to [EMAIL PROTECTED] (or lprng-requests
or lprng-digest-requests) with the word 'help' in the body. For the impatient,
to subscribe to a list with name LIST, send mail to [EMAIL PROTECTED]
with: | example:
subscribe LIST <mailaddr> | subscribe lprng-digest [EMAIL PROTECTED]
unsubscribe LIST <mailaddr> | unsubscribe lprng [EMAIL PROTECTED]
If you have major problems, send email to [EMAIL PROTECTED] with the word
LPRNGLIST in the SUBJECT line.
-----------------------------------------------------------------------------