#define PerlIO PerlIO
#define PERLIO_LAYERS 1
-extern void PerlIO_define_layer (PerlIO_funcs *tab);
-extern SV * PerlIO_find_layer (const char *name, STRLEN len);
-extern PerlIO * PerlIO_push (PerlIO *f,PerlIO_funcs *tab,const char *mode,const char *arg,STRLEN len);
-extern void PerlIO_pop (PerlIO *f);
+extern void PerlIO_define_layer (pTHX_ PerlIO_funcs *tab);
+extern SV * PerlIO_find_layer (pTHX_ const char *name, STRLEN len);
+extern PerlIO * PerlIO_push (pTHX_ PerlIO *f,PerlIO_funcs *tab,const char *mode,SV *arg);
+extern void PerlIO_pop (pTHX_ PerlIO *f);
#endif /* PerlIO */
#ifndef PerlIO_open
extern PerlIO * PerlIO_open (const char *,const char *);
#endif
+#ifndef PerlIO_openn
+extern PerlIO * PerlIO_openn (pTHX_ const char *layers, const char *mode,int fd,int imode,int perm,PerlIO *old,int narg,SV **arg);
+#endif
#ifndef PerlIO_close
extern int PerlIO_close (PerlIO *);
#endif
extern int PerlIO_binmode (pTHX_ PerlIO *f, int iotype, int omode, const char *names);
#endif
+extern void PerlIO_destruct(pTHX);
+
#ifndef PERLIO_IS_STDIO
extern void PerlIO_cleanup(void);