aboutsummaryrefslogtreecommitdiffstats
path: root/src/process.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/process.c')
-rw-r--r--src/process.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/process.c b/src/process.c
index 43f0239d301..728abebe758 100644
--- a/src/process.c
+++ b/src/process.c
@@ -208,7 +208,7 @@ static EMACS_INT update_tick;
208#ifndef NON_BLOCKING_CONNECT 208#ifndef NON_BLOCKING_CONNECT
209#ifdef HAVE_SELECT 209#ifdef HAVE_SELECT
210#if defined (HAVE_GETPEERNAME) || defined (GNU_LINUX) 210#if defined (HAVE_GETPEERNAME) || defined (GNU_LINUX)
211#if defined (O_NONBLOCK) || defined (O_NDELAY) 211#if O_NONBLOCK || O_NDELAY
212#if defined (EWOULDBLOCK) || defined (EINPROGRESS) 212#if defined (EWOULDBLOCK) || defined (EINPROGRESS)
213#define NON_BLOCKING_CONNECT 213#define NON_BLOCKING_CONNECT
214#endif /* EWOULDBLOCK || EINPROGRESS */ 214#endif /* EWOULDBLOCK || EINPROGRESS */
@@ -655,7 +655,7 @@ allocate_pty (void)
655 PTY_OPEN; 655 PTY_OPEN;
656#else /* no PTY_OPEN */ 656#else /* no PTY_OPEN */
657 { 657 {
658# ifdef O_NONBLOCK 658# if O_NONBLOCK
659 fd = emacs_open (pty_name, O_RDWR | O_NONBLOCK, 0); 659 fd = emacs_open (pty_name, O_RDWR | O_NONBLOCK, 0);
660# else 660# else
661 fd = emacs_open (pty_name, O_RDWR | O_NDELAY, 0); 661 fd = emacs_open (pty_name, O_RDWR | O_NDELAY, 0);
@@ -672,7 +672,7 @@ allocate_pty (void)
672#else 672#else
673 sprintf (pty_name, "/dev/tty%c%x", c, i); 673 sprintf (pty_name, "/dev/tty%c%x", c, i);
674#endif /* no PTY_TTY_NAME_SPRINTF */ 674#endif /* no PTY_TTY_NAME_SPRINTF */
675 if (access (pty_name, 6) != 0) 675 if (faccessat (AT_FDCWD, pty_name, R_OK | W_OK, AT_EACCESS) != 0)
676 { 676 {
677 emacs_close (fd); 677 emacs_close (fd);
678# ifndef __sgi 678# ifndef __sgi
@@ -1624,7 +1624,7 @@ create_process (Lisp_Object process, char **new_argv, Lisp_Object current_dir)
1624#if ! defined (USG) || defined (USG_SUBTTY_WORKS) 1624#if ! defined (USG) || defined (USG_SUBTTY_WORKS)
1625 /* On most USG systems it does not work to open the pty's tty here, 1625 /* On most USG systems it does not work to open the pty's tty here,
1626 then close it and reopen it in the child. */ 1626 then close it and reopen it in the child. */
1627#ifdef O_NOCTTY 1627#if O_NOCTTY
1628 /* Don't let this terminal become our controlling terminal 1628 /* Don't let this terminal become our controlling terminal
1629 (in case we don't have one). */ 1629 (in case we don't have one). */
1630 forkout = forkin = emacs_open (pty_name, O_RDWR | O_NOCTTY, 0); 1630 forkout = forkin = emacs_open (pty_name, O_RDWR | O_NOCTTY, 0);
@@ -1678,11 +1678,11 @@ create_process (Lisp_Object process, char **new_argv, Lisp_Object current_dir)
1678 } 1678 }
1679#endif 1679#endif
1680 1680
1681#ifdef O_NONBLOCK 1681#if O_NONBLOCK
1682 fcntl (inchannel, F_SETFL, O_NONBLOCK); 1682 fcntl (inchannel, F_SETFL, O_NONBLOCK);
1683 fcntl (outchannel, F_SETFL, O_NONBLOCK); 1683 fcntl (outchannel, F_SETFL, O_NONBLOCK);
1684#else 1684#else
1685#ifdef O_NDELAY 1685#if O_NDELAY
1686 fcntl (inchannel, F_SETFL, O_NDELAY); 1686 fcntl (inchannel, F_SETFL, O_NDELAY);
1687 fcntl (outchannel, F_SETFL, O_NDELAY); 1687 fcntl (outchannel, F_SETFL, O_NDELAY);
1688#endif 1688#endif
@@ -1943,7 +1943,7 @@ create_pty (Lisp_Object process)
1943#if ! defined (USG) || defined (USG_SUBTTY_WORKS) 1943#if ! defined (USG) || defined (USG_SUBTTY_WORKS)
1944 /* On most USG systems it does not work to open the pty's tty here, 1944 /* On most USG systems it does not work to open the pty's tty here,
1945 then close it and reopen it in the child. */ 1945 then close it and reopen it in the child. */
1946#ifdef O_NOCTTY 1946#if O_NOCTTY
1947 /* Don't let this terminal become our controlling terminal 1947 /* Don't let this terminal become our controlling terminal
1948 (in case we don't have one). */ 1948 (in case we don't have one). */
1949 int forkout = emacs_open (pty_name, O_RDWR | O_NOCTTY, 0); 1949 int forkout = emacs_open (pty_name, O_RDWR | O_NOCTTY, 0);
@@ -1963,11 +1963,11 @@ create_pty (Lisp_Object process)
1963 } 1963 }
1964#endif /* HAVE_PTYS */ 1964#endif /* HAVE_PTYS */
1965 1965
1966#ifdef O_NONBLOCK 1966#if O_NONBLOCK
1967 fcntl (inchannel, F_SETFL, O_NONBLOCK); 1967 fcntl (inchannel, F_SETFL, O_NONBLOCK);
1968 fcntl (outchannel, F_SETFL, O_NONBLOCK); 1968 fcntl (outchannel, F_SETFL, O_NONBLOCK);
1969#else 1969#else
1970#ifdef O_NDELAY 1970#if O_NDELAY
1971 fcntl (inchannel, F_SETFL, O_NDELAY); 1971 fcntl (inchannel, F_SETFL, O_NDELAY);
1972 fcntl (outchannel, F_SETFL, O_NDELAY); 1972 fcntl (outchannel, F_SETFL, O_NDELAY);
1973#endif 1973#endif
@@ -2927,7 +2927,7 @@ usage: (make-network-process &rest ARGS) */)
2927 { 2927 {
2928 /* Don't support network sockets when non-blocking mode is 2928 /* Don't support network sockets when non-blocking mode is
2929 not available, since a blocked Emacs is not useful. */ 2929 not available, since a blocked Emacs is not useful. */
2930#if !defined (O_NONBLOCK) && !defined (O_NDELAY) 2930#if !O_NONBLOCK && !O_NDELAY
2931 error ("Network servers not supported"); 2931 error ("Network servers not supported");
2932#else 2932#else
2933 is_server = 1; 2933 is_server = 1;
@@ -3193,7 +3193,7 @@ usage: (make-network-process &rest ARGS) */)
3193#ifdef NON_BLOCKING_CONNECT 3193#ifdef NON_BLOCKING_CONNECT
3194 if (is_non_blocking_client) 3194 if (is_non_blocking_client)
3195 { 3195 {
3196#ifdef O_NONBLOCK 3196#if O_NONBLOCK
3197 ret = fcntl (s, F_SETFL, O_NONBLOCK); 3197 ret = fcntl (s, F_SETFL, O_NONBLOCK);
3198#else 3198#else
3199 ret = fcntl (s, F_SETFL, O_NDELAY); 3199 ret = fcntl (s, F_SETFL, O_NDELAY);
@@ -3410,10 +3410,10 @@ usage: (make-network-process &rest ARGS) */)
3410 3410
3411 chan_process[inch] = proc; 3411 chan_process[inch] = proc;
3412 3412
3413#ifdef O_NONBLOCK 3413#if O_NONBLOCK
3414 fcntl (inch, F_SETFL, O_NONBLOCK); 3414 fcntl (inch, F_SETFL, O_NONBLOCK);
3415#else 3415#else
3416#ifdef O_NDELAY 3416#if O_NDELAY
3417 fcntl (inch, F_SETFL, O_NDELAY); 3417 fcntl (inch, F_SETFL, O_NDELAY);
3418#endif 3418#endif
3419#endif 3419#endif
@@ -4145,10 +4145,10 @@ server_accept_connection (Lisp_Object server, int channel)
4145 4145
4146 chan_process[s] = proc; 4146 chan_process[s] = proc;
4147 4147
4148#ifdef O_NONBLOCK 4148#if O_NONBLOCK
4149 fcntl (s, F_SETFL, O_NONBLOCK); 4149 fcntl (s, F_SETFL, O_NONBLOCK);
4150#else 4150#else
4151#ifdef O_NDELAY 4151#if O_NDELAY
4152 fcntl (s, F_SETFL, O_NDELAY); 4152 fcntl (s, F_SETFL, O_NDELAY);
4153#endif 4153#endif
4154#endif 4154#endif
@@ -4849,11 +4849,11 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd,
4849#endif 4849#endif
4850 /* ISC 4.1 defines both EWOULDBLOCK and O_NONBLOCK, 4850 /* ISC 4.1 defines both EWOULDBLOCK and O_NONBLOCK,
4851 and Emacs uses O_NONBLOCK, so what we get is EAGAIN. */ 4851 and Emacs uses O_NONBLOCK, so what we get is EAGAIN. */
4852#ifdef O_NONBLOCK 4852#if O_NONBLOCK
4853 else if (nread == -1 && errno == EAGAIN) 4853 else if (nread == -1 && errno == EAGAIN)
4854 ; 4854 ;
4855#else 4855#else
4856#ifdef O_NDELAY 4856#if O_NDELAY
4857 else if (nread == -1 && errno == EAGAIN) 4857 else if (nread == -1 && errno == EAGAIN)
4858 ; 4858 ;
4859 /* Note that we cannot distinguish between no input 4859 /* Note that we cannot distinguish between no input
@@ -7348,7 +7348,7 @@ init_process_emacs (void)
7348#ifdef HAVE_GETSOCKNAME 7348#ifdef HAVE_GETSOCKNAME
7349 ADD_SUBFEATURE (QCservice, Qt); 7349 ADD_SUBFEATURE (QCservice, Qt);
7350#endif 7350#endif
7351#if defined (O_NONBLOCK) || defined (O_NDELAY) 7351#if O_NONBLOCK || O_NDELAY
7352 ADD_SUBFEATURE (QCserver, Qt); 7352 ADD_SUBFEATURE (QCserver, Qt);
7353#endif 7353#endif
7354 7354