Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.85k stars 527 forks source link

Not OK: perl 5.00561 on i386-openbsd 2.5 #431

Closed p5pRT closed 20 years ago

p5pRT commented 24 years ago

Migrated from rt.perl.org#1272 (status was 'resolved')

Searchable as RT1272$

p5pRT commented 24 years ago

From @millert

Test 7 of io/dup fails. Reading from the dup'd file handle fails with EBADF. Setting $|=1 doesn't make a difference but changing the open of R1 from \< or +\< *does* makes the test succeed\, which strikes me as odd. From a ktrace\, however\, I don't see the kernel returning EBADF at all. What I see is that the read\, before the dup\, from R1 slurps up both lines and the subsequent read from the dup'd handle returns 0 (since there are no bytes left to read). Now\, when we open R1 with +\< there *is* a line to read from R2. I have no idea why that would be\, but I'm not convinced that this test is at all legal since stdio is pretty much guaranteed to buffer things behind your back on some (most?) systems. There's even a warning about this in the perlfunc man page "Duping a filehandle does not take into account any existing contents of stdio buffers."

Perl Info ``` Site configuration information for perl 5.00561: Configured by millert at Wed Aug 25 01:50:05 MDT 1999. Summary of my perl5 (revision 5.0 version 5 subversion 61) configuration: Platform: osname=openbsd, osvers=2.5, archname=i386-openbsd uname='openbsd xerxes.cs.colorado.edu 2.5 xerxes#1 i386 ' config_args='-ds -e -Dprefix=/usr/local/perl5.005_61' hint=recommended, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef use64bits=undef usemultiplicity=undef Compiler: cc='cc', optimize='-O2', gccversion=2.95 19990718 (prerelease) cppflags='-I/usr/local/include' ccflags ='-I/usr/local/include' stdchar='char', d_stdstdio=undef, usevfork=true intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='ld', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /usr/lib libs=-lm -lc libc=/usr/lib/libc.a, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=define, ccdlflags=' ' cccdlflags='-DPIC -fPIC ', lddlflags='-Bforcearchive -Bshareable -L/usr/local/lib' Locally applied patches: @INC for perl 5.00561: /usr/local/perl5.005_61/lib/5.00561/i386-openbsd /usr/local/perl5.005_61/lib/5.00561 /usr/local/perl5.005_61/lib/site_perl/5.00561/i386-openbsd /usr/local/perl5.005_61/lib/site_perl . Environment for perl 5.00561: HOME=/home/millert LANG (unset) LANGUAGE (unset) LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/usr/local/perl5.005_61/bin:/home/millert/bin/OpenBSD.i386:/home/millert/bin:/home/millert/bin/scripts:/usr/local/gnu/bin:/usr/local/bin:/usr/local/sbin:/usr/local/etc:/usr/local/rcs/bin:/usr/local/mh/bin:/usr/local/news/bin:/usr/local/emacs/bin:/usr/local/netpbm/bin:/usr/local/mtools/bin:/usr/local/netscape/bin:/usr/local/ghostscript/bin:/usr/local/X.V11R5/bin:/usr/local/X.V11R6/bin:/usr/local/frame/bin:/usr/local/teTeX/bin:/usr/local/cvs-1.10.1/bin:/usr/local/games/bin:/usr/local/archivers/bin:/usr/local/ssh/bin:/usr/local/skey/bin:/bin:/sbin:/usr/games:/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/X11/bin/.:/usr/X11R6/bin/.:/usr/local/bin/.:/usr/obj/bin/.:/usr/src/bin/. PERL_BADLANG (unset) SHELL=/usr/local/bin/tcsh Complete configuration data for perl 5.00561: Author='' CONFIG='true' CONFIGDOTSH='true' Date='$Date' Header='' Id='$Id' Locker='' Log='$Log' Mcc='Mcc' PATCHLEVEL='5' PERL_REVISION='5' PERL_SUBVERSION='61' PERL_VERSION='5' RCSfile='$RCSfile' Revision='$Revision' SUBVERSION='61' Source='' State='' _a='.a' _exe='' _o='.o' afs='false' alignbytes='4' ansi2knr='' aphostname='/bin/hostname' apiversion='5.00561' ar='ar' archlib='/usr/local/perl5.005_61/lib/5.00561/i386-openbsd' archlibexp='/usr/local/perl5.005_61/lib/5.00561/i386-openbsd' archname='i386-openbsd' archname64='' archobjs='' awk='awk' baserev='5.0' bash='' bin='/usr/local/perl5.005_61/bin' bincompat5005='define' binexp='/usr/local/perl5.005_61/bin' bison='' byacc='byacc' byteorder='1234' c='' castflags='0' cat='cat' cc='cc' cccdlflags='-DPIC -fPIC ' ccdlflags=' ' ccflags='-I/usr/local/include' ccsymbols='__GNUC_MINOR__=95 __GNUC__=2 __OpenBSD__=1 cpu=i386 machine=i386 system=OpenBSD system=unix' cf_by='millert' cf_email='millert@xerxes.cs.colorado.edu' cf_time='Wed Aug 25 01:50:05 MDT 1999' chgrp='' chmod='' chown='' clocktype='clock_t' comm='comm' compress='' config_arg0='Configure' config_arg1='-ds' config_arg2='-e' config_arg3='-Dprefix=/usr/local/perl5.005_61' config_argc='3' config_args='-ds -e -Dprefix=/usr/local/perl5.005_61' contains='grep' cp='cp' cpio='' cpp='cpp' cpp_stuff='42' cppccsymbols='__i386__=1 __unix__=1' cppflags='-I/usr/local/include' cpplast='-' cppminus='-' cpprun='cc -E' cppstdin='cc -E' cppsymbols='__STDC__=1' crosscompile='' cryptlib='' csh='csh' d_Gconvert='sprintf((b),"%.*g",(n),(x))' d_PRIEldbl='define' d_PRIFldbl='define' d_PRIGldbl='define' d_PRIX64='define' d_PRId64='define' d_PRIeldbl='define' d_PRIfldbl='define' d_PRIgldbl='define' d_PRIi64='define' d_PRIo64='define' d_PRIu64='define' d_PRIx64='define' d_access='define' d_accessx='' d_alarm='define' d_archlib='define' d_atolf='' d_atoll='' d_attribut='define' d_bcmp='define' d_bcopy='define' d_bincompat5005='define' d_bsd='define' d_bsdgetpgrp='' d_bsdsetpgrp='define' d_bzero='define' d_casti32='' d_castneg='define' d_charvspr='' d_chown='define' d_chroot='define' d_chsize='' d_closedir='define' d_cmsghdr_s='define' d_const='define' d_crypt='define' d_csh='define' d_cuserid='' d_dbl_dig='define' d_difftime='define' d_dirnamlen='define' d_dlerror='define' d_dlopen='define' d_dlsymun='define' d_dosuid='' d_drand48proto='define' d_dup2='define' d_eaccess='' d_endgrent='define' d_endhent='define' d_endnent='define' d_endpent='define' d_endpwent='define' d_endsent='define' d_endspent='' d_eofnblk='define' d_eunice='' d_fchmod='define' d_fchown='define' d_fcntl='define' d_fd_macros='define' d_fd_set='define' d_fds_bits='define' d_fgetpos='define' d_flexfnam='define' d_flock='define' d_fork='define' d_fpathconf='define' d_fpos64_t='' d_fseeko='' d_fsetpos='define' d_fstatfs='define' d_fstatvfs='' d_ftello='' d_ftime='' d_getgrent='define' d_getgrps='define' d_gethbyaddr='define' d_gethbyname='define' d_gethent='define' d_gethname='define' d_gethostprotos='define' d_getlogin='define' d_getmntent='' d_getnbyaddr='define' d_getnbyname='define' d_getnent='define' d_getnetprotos='define' d_getpbyname='define' d_getpbynumber='define' d_getpent='define' d_getpgid='define' d_getpgrp='define' d_getpgrp2='' d_getppid='define' d_getprior='define' d_getprotoprotos='define' d_getpwent='define' d_getsbyname='define' d_getsbyport='define' d_getsent='define' d_getservprotos='define' d_getspent='' d_getspnam='' d_gettimeod='define' d_gnulibc='' d_grpasswd='define' d_hasmntopt='' d_htonl='define' d_index='' d_inetaton='define' d_int64t='' d_iovec_s='' d_isascii='define' d_killpg='define' d_lchown='define' d_ldbl_dig='define' d_link='define' d_llseek='' d_locconv='define' d_lockf='define' d_longdbl='define' d_longlong='define' d_lstat='define' d_madvise='define' d_mblen='define' d_mbstowcs='define' d_mbtowc='define' d_memchr='define' d_memcmp='define' d_memcpy='define' d_memmove='define' d_memset='define' d_mkdir='define' d_mkfifo='define' d_mktime='define' d_mmap='define' d_mprotect='define' d_msg='define' d_msg_ctrunc='define' d_msg_dontroute='define' d_msg_oob='define' d_msg_peek='define' d_msg_proxy='' d_msgctl='define' d_msgget='define' d_msghdr_s='define' d_msgrcv='define' d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='' d_nice='define' d_off64_t='' d_old_pthread_create_joinable='' d_oldpthreads='' d_oldsock='' d_open3='define' d_pathconf='define' d_pause='define' d_phostname='' d_pipe='define' d_poll='define' d_portable='define' d_pthread_yield='' d_pwage='' d_pwchange='define' d_pwclass='define' d_pwcomment='' d_pwexpire='define' d_pwgecos='define' d_pwpasswd='define' d_pwquota='' d_readdir='define' d_readlink='define' d_readv='define' d_recvmsg='define' d_rename='define' d_rewinddir='define' d_rmdir='define' d_safebcpy='define' d_safemcpy='define' d_sanemcmp='define' d_sched_yield='' d_scm_rights='define' d_seekdir='define' d_select='define' d_sem='define' d_semctl='define' d_semctl_semid_ds='define' d_semctl_semun='define' d_semget='define' d_semop='define' d_sendmsg='define' d_setegid='define' d_seteuid='define' d_setgrent='define' d_setgrps='define' d_sethent='define' d_setlinebuf='define' d_setlocale='define' d_setnent='define' d_setpent='define' d_setpgid='define' d_setpgrp='define' d_setpgrp2='' d_setprior='define' d_setpwent='define' d_setregid='' d_setresgid='' d_setresuid='' d_setreuid='' d_setrgid='' d_setruid='' d_setsent='define' d_setsid='define' d_setspent='' d_setvbuf='define' d_sfio='' d_shm='define' d_shmat='define' d_shmatprototype='define' d_shmctl='define' d_shmdt='define' d_shmget='define' d_sigaction='define' d_sigsetjmp='define' d_socket='define' d_sockpair='define' d_statblks='define' d_statfs='define' d_statfsflags='define' d_statvfs='' d_stdio_cnt_lval='' d_stdio_ptr_lval='' d_stdio_stream_array='define' d_stdiobase='' d_stdstdio='' d_strchr='define' d_strcoll='define' d_strctcpy='define' d_strerrm='strerror(e)' d_strerror='define' d_strtod='define' d_strtol='define' d_strtoul='define' d_strtoull='' d_strxfrm='define' d_suidsafe='define' d_symlink='define' d_syscall='define' d_sysconf='define' d_sysernlst='' d_syserrlst='define' d_system='define' d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' d_time='define' d_times='define' d_truncate='define' d_tzname='define' d_umask='define' d_uname='define' d_union_semun='' d_vendorlib='' d_vfork='define' d_void_closedir='' d_voidsig='define' d_voidtty='' d_volatile='define' d_vprintf='define' d_wait4='define' d_waitpid='define' d_wcstombs='define' d_wctomb='define' d_writev='define' d_xenix='' date='date' db_hashtype='u_int32_t' db_prefixtype='size_t' defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' doublesize='8' drand01='drand48()' dynamic_ext='B ByteLoader DB_File Data/Dumper Devel/DProf Devel/Peek Fcntl IO IPC/SysV NDBM_File Opcode POSIX SDBM_File Socket attrs re' eagain='EAGAIN' ebcdic='' echo='echo' egrep='egrep' emacs='' eunicefix=':' exe_ext='' expr='expr' extensions='B ByteLoader DB_File Data/Dumper Devel/DProf Devel/Peek Fcntl IO IPC/SysV NDBM_File Opcode POSIX SDBM_File Socket attrs re Errno' fflushNULL='define' fflushall='' find='' firstmakefile='makefile' flex='' fpostype='fpos_t' freetype='void' full_ar='/usr/bin/ar' full_csh='/bin/csh' full_sed='/usr/bin/sed' gccversion='2.95 19990718 (prerelease)' gidtype='gid_t' glibpth='/usr/shlib /shlib /lib/pa1.1 /usr/lib/large /lib /usr/lib /usr/lib/386 /lib/386 /lib/large /usr/lib/small /lib/small /usr/ccs/lib /usr/ucblib /usr/local/lib ' grep='grep' groupcat='cat /etc/group' groupstype='gid_t' gzip='gzip' h_fcntl='false' h_sysfile='true' hint='recommended' hostcat='cat /etc/hosts' huge='' i_arpainet='define' i_bsdioctl='' i_db='define' i_dbm='' i_dirent='define' i_dld='' i_dlfcn='define' i_fcntl='' i_float='define' i_gdbm='' i_grp='define' i_inttypes='define' i_limits='define' i_locale='define' i_machcthr='' i_malloc='define' i_math='define' i_memory='' i_mntent='' i_ndbm='define' i_netdb='define' i_neterrno='' i_netinettcp='define' i_niin='define' i_poll='define' i_pthread='' i_pwd='define' i_rpcsvcdbm='' i_sfio='' i_sgtty='' i_shadow='' i_socks='define' i_stdarg='define' i_stddef='define' i_stdlib='define' i_string='define' i_sysaccess='' i_sysdir='define' i_sysfile='define' i_sysfilio='define' i_sysin='' i_sysioctl='define' i_sysmman='define' i_sysmount='define' i_sysndir='' i_sysparam='define' i_sysresrc='define' i_syssecrt='' i_sysselct='define' i_syssockio='' i_sysstat='define' i_sysstatvfs='' i_systime='define' i_systimek='' i_systimes='define' i_systypes='define' i_sysuio='define' i_sysun='define' i_syswait='define' i_termio='' i_termios='define' i_time='' i_unistd='define' i_utime='define' i_values='' i_varargs='' i_varhdr='stdarg.h' i_vfork='' ignore_versioned_solibs='' incpath='' inews='' installarchlib='/usr/local/perl5.005_61/lib/5.00561/i386-openbsd' installbin='/usr/local/perl5.005_61/bin' installman1dir='/usr/local/perl5.005_61/man/man1' installman3dir='/usr/local/perl5.005_61/man/man3' installprefix='/usr/local/perl5.005_61' installprefixexp='/usr/local/perl5.005_61' installprivlib='/usr/local/perl5.005_61/lib/5.00561' installscript='/usr/local/perl5.005_61/bin' installsitearch='/usr/local/perl5.005_61/lib/site_perl/5.00561/i386-openbsd' installsitelib='/usr/local/perl5.005_61/lib/site_perl' installstyle='lib' installusrbinperl='define' installvendorlib='' intsize='4' known_extensions='B ByteLoader DB_File Data/Dumper Devel/DProf Devel/Peek Fcntl GDBM_File IO IPC/SysV NDBM_File ODBM_File Opcode POSIX SDBM_File Socket Thread attrs re' ksh='' large='' ld='ld' lddlflags='-Bforcearchive -Bshareable -L/usr/local/lib' ldflags=' -L/usr/local/lib' ldlibpthname='LD_LIBRARY_PATH' less='less' lib_ext='.a' libc='/usr/lib/libc.a' libperl='libperl.a' libpth='/usr/local/lib /usr/lib' libs='-lm -lc' libswanted='sfio socket inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun m c cposix posix ndir dir sec ucb bsd BSD PW x' line='' lint='' lkflags='' ln='ln' lns='/bin/ln -s' locincpth='/usr/local/include /opt/local/include /usr/gnu/include /opt/gnu/include /usr/GNU/include /opt/GNU/include' loclibpth='/usr/local/lib /opt/local/lib /usr/gnu/lib /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib' longdblsize='12' longlongsize='8' longsize='4' lp='' lpr='' ls='ls' lseeksize='8' lseektype='off_t' mail='' mailx='' make='make' make_set_make='#' mallocobj='' mallocsrc='' malloctype='void *' man1dir='/usr/local/perl5.005_61/man/man1' man1direxp='/usr/local/perl5.005_61/man/man1' man1ext='1' man3dir='/usr/local/perl5.005_61/man/man3' man3direxp='/usr/local/perl5.005_61/man/man3' man3ext='3' medium='' mips='' mips_type='' mkdir='mkdir' mmaptype='caddr_t' models='none' modetype='mode_t' more='more' multiarch='' mv='' myarchname='i386-openbsd' mydomain='.cs.colorado.edu' myhostname='xerxes' myuname='openbsd xerxes.cs.colorado.edu 2.5 xerxes#1 i386 ' n='-n' netdb_hlen_type='int' netdb_host_type='const char *' netdb_name_type='const char *' netdb_net_type='in_addr_t' nm='nm' nm_opt='' nm_so_opt='' nonxs_ext='Errno' nroff='nroff' o_nonblock='O_NONBLOCK' obj_ext='.o' old_pthread_create_joinable='' optimize='-O2' orderlib='false' osname='openbsd' osvers='2.5' package='perl5' pager='/usr/bin/less' passcat='cat /etc/passwd' patchlevel='5' path_sep=':' perl='' perladmin='millert@xerxes.cs.colorado.edu' perlpath='/usr/local/perl5.005_61/bin/perl' pg='pg' phostname='hostname' pidtype='pid_t' plibpth='' pmake='' pr='' prefix='/usr/local/perl5.005_61' prefixexp='/usr/local/perl5.005_61' privlib='/usr/local/perl5.005_61/lib/5.00561' privlibexp='/usr/local/perl5.005_61/lib/5.00561' prototype='define' ptrsize='4' randbits='48' randfunc='drand48' randseedtype='long' ranlib='/usr/bin/ranlib' rd_nodata='-1' rm='rm' rmail='' runnm='true' sPRIEldbl='"LE"' sPRIFldbl='"LF"' sPRIGldbl='"LG"' sPRIX64='"llX"' sPRId64='"lld"' sPRIeldbl='"Le"' sPRIfldbl='"Lf"' sPRIgldbl='"Lg"' sPRIi64='"lli"' sPRIo64='"llo"' sPRIu64='"llu"' sPRIx64='"llx"' sched_yield='' scriptdir='/usr/local/perl5.005_61/bin' scriptdirexp='/usr/local/perl5.005_61/bin' sed='sed' seedfunc='srand48' selectminbits='32' selecttype='fd_set *' sendmail='' sh='/bin/sh' shar='' sharpbang='#!' shmattype='char *' shortsize='2' shrpenv='' shsharp='true' sig_count='32' sig_name='ZERO HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM URG STOP TSTP CONT CHLD TTIN TTOU IO XCPU XFSZ VTALRM PROF WINCH INFO USR1 USR2 IOT ' sig_name_init='"ZERO", "HUP", "INT", "QUIT", "ILL", "TRAP", "ABRT", "EMT", "FPE", "KILL", "BUS", "SEGV", "SYS", "PIPE", "ALRM", "TERM", "URG", "STOP", "TSTP", "CONT", "CHLD", "TTIN", "TTOU", "IO", "XCPU", "XFSZ", "VTALRM", "PROF", "WINCH", "INFO", "USR1", "USR2", "IOT", 0' sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 6 ' sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 6, 0' signal_t='void' sitearch='/usr/local/perl5.005_61/lib/site_perl/5.00561/i386-openbsd' sitearchexp='/usr/local/perl5.005_61/lib/site_perl/5.00561/i386-openbsd' sitelib='/usr/local/perl5.005_61/lib/site_perl' sitelibexp='/usr/local/perl5.005_61/lib/site_perl' siteprefix='/usr/local/perl5.005_61' siteprefixexp='/usr/local/perl5.005_61' sizetype='size_t' sleep='' smail='' small='' so='so' sockethdr='' socketlib='' sort='sort' spackage='Perl5' spitshell='cat' split='' src='.' ssizetype='ssize_t' startperl='#!/usr/local/perl5.005_61/bin/perl' startsh='#!/bin/sh' static_ext=' ' stdchar='char' stdio_base='((fp)->_base)' stdio_bufsiz='((fp)->_cnt + (fp)->_ptr - (fp)->_base)' stdio_cnt='((fp)->_cnt)' stdio_filbuf='' stdio_ptr='((fp)->_ptr)' stdio_stream_array='__sF' strings='/usr/include/string.h' submit='' subversion='61' sysman='/usr/man/man1' tail='' tar='' tbl='' tee='' test='test' timeincl='/usr/include/sys/time.h ' timetype='time_t' touch='touch' tr='tr' trnl='\n' troff='' uidtype='uid_t' uname='uname' uniq='uniq' use64bits='' usedl='define' uselongdouble='' usemultiplicity='' usemymalloc='n' usenm='true' useopcode='true' useperlio='' useposix='true' usesfio='false' useshrplib='false' usesocks='' usethreads='' usevendorprefix='' usevfork='true' usrinc='/usr/include' uuname='' vendorlib='' vendorlibexp='' vendorprefix='' vendorprefixexp='' version='5.00561' vi='' voidflags='15' xlibpth='/usr/lib/386 /lib/386' zcat='' zip='zip' ```
p5pRT commented 20 years ago

From [Unknown Contact. See original ticket]

classify

Ciao Richard Foley


richard@​perl.org | richard@​rfi.net | Richard.Foley@​m.dasa.de 'Ciao' - shorter than 'Aufwiedersehen'