(And do not assign the fd in PREINIT.)
InputStream sock
PROTOTYPE: $
PREINIT:
- int fd = PerlIO_fileno(sock);
+ int fd;
CODE:
- {
-#ifdef HAS_SOCKATMARK
+ fd = PerlIO_fileno(sock);
if (fd < 0) {
errno = EBADF;
RETVAL = -1;
- } else {
+ }
+#ifdef HAS_SOCKATMARK
+ else {
RETVAL = sockatmark(fd);
}
#else
- {
- if (fd < 0) {
- errno = EBADF;
- RETVAL = -1;
- }
else {
int flag = 0;
# ifdef SIOCATMARK
# endif
RETVAL = flag;
}
- }
#endif
- }
OUTPUT:
RETVAL