Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IO::Handle methods ioctl and fcntl broken. #134

p5pRT opened this issue Jul 1, 1999 · 1 comment

IO::Handle methods ioctl and fcntl broken. #134

p5pRT opened this issue Jul 1, 1999 · 1 comment


Copy link

p5pRT commented Jul 1, 1999

Migrated from (status was 'resolved')

Searchable as RT939$

Copy link

p5pRT commented Jul 1, 1999


The module IO​::Handle provides methods ioctl and fcntl.

These methods are not mentioned in the POD, so I suppose I
shouldn't be complaining about them. However, since one expects
them to exist, they are easy to call by accident. Moreover, if
they worked, they would be useful.

So, here goes.

There are two problems.

1. Each method copies its third argument before calling the
  corresponding built-in. This is wrong, because both built-ins
  may return results via the third argument. I claim that this
  is a plain bug which should be fixed.

2. Each method returns 0 if the corresponding built-in returns
  "0 but true". This is a highly surprising difference of spec
  from the expected "just front ends for the corresponding
  built-in functions". If it isn't a bug it requires careful

Site configuration information for perl 5.00503​:

Configured by cj10 at Tue Jun 8 12​:07​:36 BST 1999.

Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration​:
  osname=solaris, osvers=2.6, archname=sun4-solaris
  uname='sunos 5.6 generic_105181-13 sun4u sparc sunw,ult
ra-5_10 '
  hint=recommended, useposix=true, d_sigaction=define
  usethreads=undef useperlio=undef d_sfio=undef
  cc='cc', optimize='-O', gccversion=
  ccflags =''
  stdchar='unsigned char', d_stdstdio=define, usevfork=false
  intsize=4, longsize=4, ptrsize=4, doublesize=8
  d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
  alignbytes=8, usemymalloc=y, prototype=define
  Linker and Libraries​:
  ld='cc', ldflags =''
  libpth=/usr/lib /usr/ccs/lib
  libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
  libc=/lib/, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking​:
  dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
  cccdlflags='-KPIC', lddlflags='-G'

Locally applied patches​:

@​INC for perl 5.00503​:

Environment for perl 5.00503​:
  LANG (unset)
  LANGUAGE (unset)
  LOGDIR (unset)
  PERL_BADLANG (unset)

Charles Jardine - Computing Service, University of Cambridge
cj10@​ Tel​: +44 1223 334506, Fax​: +44 1223 334679

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet

No branches or pull requests

1 participant