- 04 Apr, 2016 1 commit
-
-
Paul Eggert authored
-
- 22 Mar, 2016 1 commit
-
-
Paul Eggert authored
* lisp/proced.el (proced-signal-list): Omit comment about obsolete systems that do not support POSIX 1003.1-2001 signals. * src/process.c (NON_BLOCKING_CONNECT): Remove, since we can now assume POSIX 1003.1-2001 or better here. Assume it’s defined. (connect_network_socket): Assume EINPROGRESS is defined, as that’s portable too now. (Fmake_network_process): Use bool for boolean.
-
- 10 Mar, 2016 2 commits
-
-
Paul Eggert authored
Work around Bug#22884 by rewording comments and strings to avoid ‘(’ at the start of a line unless it starts a function. This change is a short-term hack; in the longer run we plan to fix cc-mode’s performance for C files that have ‘(’ at the start of a line in a comment or string.
-
Paul Eggert authored
* src/process.c (Fdelete_process): Check gai_cancel return value. That way, there’s no need to invoke gai_error. Check gai_suspend return value. (Fmake_network_process): Don’t assume gai_strerror returns a UTF-8 string. Simplify call to connect_network_socket. (check_for_dns): Avoid unnecessary initialization of local.
-
- 08 Mar, 2016 1 commit
-
-
Paul Eggert authored
* admin/CPP-DEFINES, configure.ac: Remove HAVE_GETADDRINFO, HAVE_H_ERRNO. All uses removed. * doc/lispref/processes.texi (Network, Network Processes), etc/NEWS: Say that port numbers can be integer strings. * lib-src/pop.c (h_errno) [!WINDOWSNT && !HAVE_H_ERRNO]: Remove decl. (socket_connection): Assume HAVE_GETADDRINFO. * lisp/mpc.el (mpc--proc-connect): * lisp/net/network-stream.el (open-network-stream): It’s now OK to use integer strings as port numbers. * src/process.c (conv_numerical_to_lisp) [!HAVE_GETADDRINFO]: Remove. (Fmake_network_process): Assume HAVE_GETADDRINFO.
-
- 07 Mar, 2016 1 commit
-
-
Paul Eggert authored
The IRIX port wasn’t really working anyway, and the code was getting in the way of other changes (e.g., getaddrinfo fixes). IRIX’s supplier dropped support for IRIX in 2013. * admin/CPP-DEFINES: * configure.ac (opsys): * doc/lispref/os.texi (System Environment): * etc/MACHINES, etc/PROBLEMS: * lisp/find-dired.el (find-grep-options): * lisp/lpr.el (lpr-lp-system): * lisp/ls-lisp.el (ls-lisp-emulation): * lisp/mail/rmail.el (rmail-spool-directory): * lisp/net/net-utils.el (ping-program-options): * lisp/progmodes/gud.el (gud-irix-p, gud-dbx-use-stopformat-p): * lisp/progmodes/ps-mode.el (ps-mode-print-function): * src/conf_post.h [IRIX6_5]: * src/emacs.c (Vsystem_type): * src/filelock.c (get_boot_time_1): * src/process.c (process_send_signal): * src/unexelf.c (unexec): Omit IRIX-specific code and/or documentation. * configure.ac (NON_GCC_TEST_OPTIONS, IRIX6_5, PREFER_VSUSP): Remove. All uses removed. * etc/NEWS: Document the change.
-
- 03 Mar, 2016 1 commit
-
-
Lars Ingebrigtsen authored
* src/gnutls.h (GNUTLS_EMACS_HANDSHAKES_LIMIT): Increase the number of retries so that we try for about a minute. * src/process.c (wait_reading_process_output): Ensure progress for DNS resolution and TLS negotiation.
-
- 29 Feb, 2016 3 commits
-
-
Paul Eggert authored
Emacs shouldn’t need to call res_init any more, now that nscd or equivalent is everywhere. On modern systems, calling res_init simply slows Emacs down. On ancient systems lacking nscd Emacs will still work well enough with this change; it’s just that it won’t respond to changes in /etc/resolv.conf. * configure.ac (HAVE_RES_INIT): Remove. Worry about -lresolv only when configured --with-hesiod. Hesiod is still used; see, e.g.: https://soylentnews.org/meta/article.pl?sid=15/07/13/0255214 * src/Makefile.in (LIBRESOLV): Remove. All uses removed.
-
Paul Eggert authored
-
Lars Ingebrigtsen authored
* src/process.c (Fdelete_process): Wait for async DNS to complete before freeing the data structures it needs.
-
- 25 Feb, 2016 2 commits
-
-
Paul Eggert authored
* src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp) (get_lisp_to_sockaddr_size, Fset_process_datagram_address) (connect_network_socket): Use ptrdiff_t, not int, for signed object sizes. This addresses only a theoretical problem, as in practice these object sizes are less than 2**31, but we might as well use the same style here as elsewhere in Emacs. (string_integer_p): Remove; all uses removed. (Fmake_network_process): Check that port number is in range. When converting an integer-string service, rely on strtol rather than rechecking the string by hand. * src/process.h, src/w32.c (conv_sockaddr_to_lisp): Adjust prototypes to match.
-
Lars Ingebrigtsen authored
* src/process.c (string_integer_p): New function. (Fmake_network_process): Use it to allow connecting to services specified as "993" even when getaddrbyname isn't available.
-
- 24 Feb, 2016 1 commit
-
-
Lars Ingebrigtsen authored
* src/process.c (Fset_process_filter_multibyte): Defer completing coding system setup in asynchronous processes. (Fset_process_coding_system): Ditto.
-
- 23 Feb, 2016 2 commits
-
-
Paul Eggert authored
* src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED to a local unused when getaddrinfo_a is missing. Resize portbuf to size needed. Do cheap test first. Move local to block where it’s needed.
-
Paul Eggert authored
* src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED): Omit unnecessary parens. * src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit) (gnutls_verify_boot): Use bool for boolean. (ATTRIBUTE_FORMAT_PRINTF): Add printf attribute. * src/process.c (free_dns_request, Fmake_network_process): Allocate and free async request control block all in one go. (set_network_socket_coding_system, finish_after_tls_connection) (connect_network_socket): Now static. (conv_numerical_to_lisp): 2nd arg is now int, not unsigned. (Fmake_network_process): Use list1 for brevity. (wait_for_socket_fds): 2nd arg is now const ptr. * src/process.h (struct Lisp_Process.dns_request): Now struct gaicb *, not struct gaicb **, since there was always exactly one. All uses changed. * src/window.c, src/window.h (run_window_configuration_change_hook): Now static.
-
- 22 Feb, 2016 5 commits
-
-
Lars Ingebrigtsen authored
* src/process.c (wait_reading_process_output): Verify the boot of the correct process.
-
Lars Ingebrigtsen authored
* src/process.c (Fmake_network_process): Remove debugging printf. (wait_for_socket_fds, wait_while_connecting) (wait_for_tls_negotiation): Remove newlines from messages.
-
Lars Ingebrigtsen authored
-
Lars Ingebrigtsen authored
(Fprocess_contact, Fprocess_datagram_address) (Fset_process_datagram_address, Fset_network_process_option) (Fprocess_send_region, Fprocess_send_string): Mention that the functions may block. (Fset_process_coding_system): Ditto.
-
Lars Ingebrigtsen authored
* src/process.c (wait_for_socket_fds): Add warning to the log. (wait_while_connecting): Ditto. (wait_for_tls_negotiation): Ditto.
-
- 21 Feb, 2016 1 commit
-
-
Alain Schneble authored
* src/process.c (check_for_dns): If the async DNS request failed and the associated process is still in "connect" state, deactivate the process and set status to "failed".
-
- 19 Feb, 2016 1 commit
-
-
Lars Ingebrigtsen authored
* src/process.c (set_network_socket_coding_system): Pass in the host/service that's been computed already.
-
- 18 Feb, 2016 1 commit
-
-
Lars Ingebrigtsen authored
* src/gnutls.c (gnutls_verify_boot): Refactor out into its own function so that we can call it asynchronously. (Fgnutls_boot): Use it. * src/process.c (wait_reading_process_output): Verify the TLS negotiation.
-
- 16 Feb, 2016 8 commits
-
-
Lars Ingebrigtsen authored
* src/process.c (wait_reading_process_output): Deactivate the correct process on failure.
-
Lars Ingebrigtsen authored
* src/gnutls.c (gnutls_try_handshake): Factor out into its own function. (emacs_gnutls_handshake): Use it. (emacs_gnutls_read): Just return instead of retrying the handshake. * src/process.c (finish_after_tls_connection): Factor out into its own function. (connect_network_socket): Use it. (wait_reading_process_output): Retry TLS handshakes. (wait_reading_process_output): Defer sentinel until TLS completes.
-
Lars Ingebrigtsen authored
* src/process.c (wait_reading_process_output): Simplify the DNS resolution loop a bit.
-
Alain Schneble authored
* src/process.c: Remove declaration/definition of dns_processes list. * src/process.c (wait_reading_process_output): Loop over all processes in Vprocess_alist instead of dns_processes, to check for completed DNS requests.
-
Lars Ingebrigtsen authored
* src/process.c (Fset_process_filter): Don't set the socket masks here, because we may not have a socket yet. (set_process_filter_masks): New function. (connect_network_socket): Set the filter masks here.
-
Lars Ingebrigtsen authored
* src/process.c (free_dns_request): Factor out into own function. (Fdelete_process): When deleting a process, free any DNS structures associated with it. (check_for_dns): Always free all DNS resources.
-
Alain Schneble authored
* src/process.c (set-process-window-size): Explicitly return Qnil when called with network processes as set_window_size won't work anyway on socket fds. As a welcome side effect, this makes the blocking wait_for_socket_fds call obsolete.
-
Lars Ingebrigtsen authored
* src/process.c (Fmake_network_process): Set the read/write coding systems here, so that special bindings work. (Fmake_network_process): Complete the coding system setup here.
-
- 15 Feb, 2016 4 commits
-
-
Lars Ingebrigtsen authored
* src/process.c (connect_network_socket): Mark the connection as failed if the handshake didn't succeed yet. This should be reworked later.
-
Lars Ingebrigtsen authored
* lisp/net/network-stream.el (network-stream-open-tls): Postpone NSM verification when running async. * src/process.c (Fset_process_filter): This function doesn't need to wait. (connect_network_socket): Set the process status to "run" only after TLS negotiation. (wait_for_socket_fds): Take a name parameter for more debugging. (wait_reading_process_output): Don't change status to "run" unless TLS negotiation has finished. (send_process): Wait for the process here instead of send_process_string. (connect_network_socket): Call the network security manager.
-
Lars Ingebrigtsen authored
* doc/lispref/processes.texi (Network Processes): Remove mention of `dns'. * lisp/net/network-stream.el (open-network-stream): Remove mention of `dns'. * src/process.c (Fset_process_filter) (Fset_process_window_size, Fprocess_contact) (Fprocess_datagram_address, Fset_process_datagram_address) (Fset_network_process_option, Fprocess_send_region) (Fprocess_send_string, Fset_process_coding_system) (Fset_process_filter_multibyte): Remove the #ifdef HAVE_GETADDRINFO_A checks. (Fprocess_send_string): Wait for TLS negotiation. (wait_for_tls_negotiation): New function. (send_process): Remove the TLS boot check. * src/process.c (Fmake_network_process): Ditto.
-
Alain Schneble authored
* src/process.c (set-process-filter, set-process-window-size, process-contact, process-datagram-address, set-process-datagram-address, set-network-process-option): Make functions wait (block) on network process until pending DNS requests have been processed and associated socket initialized. * src/process.c (process-send-region, process-send-string, process-send-eof): Make functions wait (block) while network process is in connect state.
-
- 09 Feb, 2016 1 commit
-
-
David Edmondson authored
* src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are converted to a list of 16 bit quantities by conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the same scheme rather than expecting a (longer) list of 8 bit quantities.
-
- 07 Feb, 2016 2 commits
-
-
David Edmondson authored
* src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are converted to a list of 16 bit quantities by conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the same scheme rather than expecting a (longer) list of 8 bit quantities. Backport: (cherry picked from commit 55ce3c30)
-
David Edmondson authored
* src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are converted to a list of 16 bit quantities by conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the same scheme rather than expecting a (longer) list of 8 bit quantities.
-
- 05 Feb, 2016 2 commits
-
-
Lars Ingebrigtsen authored
* lisp/url/url-gw.el (url-open-stream): Use non-blocking DNS. * src/process.c (syms_of_process): Add a `dns' subfeature for make-network-process.
-
Lars Ingebrigtsen authored
* doc/lispref/processes.texi (Network Processes): Mention the dns value of :nowait. * src/process.c (Fmake_network_process): Only do async DNS if :nowait is `dns'.
-