# include <libutil.h>
#endif
+/* Get 'struct termios' and 'struct winsize'. */
+#include <termios.h>
+
/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */
/* The definition of _GL_WARN_ON_USE is copied here. */
/* Declare overridden functions. */
#if @GNULIB_FORKPTY@
+/* Create pseudo tty master slave pair and set terminal attributes
+ according to TERMP and WINP. Fork a child process attached to the
+ slave end. Return a handle for the master end in *AMASTER, and
+ return the name of the slave end in NAME. */
+# if @REPLACE_FORKPTY@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef forkpty
+# define forkpty rpl_forkpty
+# endif
+_GL_FUNCDECL_RPL (forkpty, int,
+ (int *amaster, char *name,
+ struct termios const *termp, struct winsize const *winp));
+_GL_CXXALIAS_RPL (forkpty, int,
+ (int *amaster, char *name,
+ struct termios const *termp, struct winsize const *winp));
+# else
+# if !@HAVE_FORKPTY@
+_GL_FUNCDECL_SYS (forkpty, int,
+ (int *amaster, char *name,
+ struct termios const *termp, struct winsize const *winp));
+# endif
+_GL_CXXALIAS_SYS (forkpty, int,
+ (int *amaster, char *name,
+ struct termios const *termp, struct winsize const *winp));
+# endif
+_GL_CXXALIASWARN (forkpty);
#elif defined GNULIB_POSIXCHECK
# undef forkpty
# if HAVE_RAW_DECL_FORKPTY
#endif
#if @GNULIB_OPENPTY@
+/* Create pseudo tty master slave pair and set terminal attributes
+ according to TERMP and WINP. Return handles for both ends in
+ *AMASTER and *ASLAVE, and return the name of the slave end in NAME. */
+# if @REPLACE_OPENPTY@
+# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+# undef openpty
+# define openpty rpl_openpty
+# endif
+_GL_FUNCDECL_RPL (openpty, int,
+ (int *amaster, int *aslave, char *name,
+ struct termios const *termp, struct winsize const *winp));
+_GL_CXXALIAS_RPL (openpty, int,
+ (int *amaster, int *aslave, char *name,
+ struct termios const *termp, struct winsize const *winp));
+# else
+# if !@HAVE_OPENPTY@
+_GL_FUNCDECL_SYS (openpty, int,
+ (int *amaster, int *aslave, char *name,
+ struct termios const *termp, struct winsize const *winp));
+# endif
+_GL_CXXALIAS_SYS (openpty, int,
+ (int *amaster, int *aslave, char *name,
+ struct termios const *termp, struct winsize const *winp));
+# endif
+_GL_CXXALIASWARN (openpty);
#elif defined GNULIB_POSIXCHECK
# undef openpty
# if HAVE_RAW_DECL_OPENPTY