diff options
| author | Paul Eggert | 2016-08-03 07:45:47 -0400 |
|---|---|---|
| committer | Paul Eggert | 2016-08-03 07:46:30 -0400 |
| commit | 744cc9fa17d20450fc3cf1ca6bb71869abeeb77b (patch) | |
| tree | d16027c534195b14d34e3f812af4e2f28b6da5e8 /src | |
| parent | 1a8d31123698ccf6f165e49fcfe16631d07a7aea (diff) | |
| download | emacs-744cc9fa17d20450fc3cf1ca6bb71869abeeb77b.tar.gz emacs-744cc9fa17d20450fc3cf1ca6bb71869abeeb77b.zip | |
Port to systems lacking GNUTLS_NONBLOCK
Problem reported by Colin Baxter in:
http://lists.gnu.org/archive/html/emacs-devel/2016-08/msg00096.html
* src/gnutls.c (Fgnutls_boot): Don’t assume GNUTLS_NONBLOCK is defined.
Diffstat (limited to 'src')
| -rw-r--r-- | src/gnutls.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gnutls.c b/src/gnutls.c index e3e9311c48d..bc35dfb4116 100644 --- a/src/gnutls.c +++ b/src/gnutls.c | |||
| @@ -1602,8 +1602,12 @@ one trustfile (usually a CA bundle). */) | |||
| 1602 | /* Call gnutls_init here: */ | 1602 | /* Call gnutls_init here: */ |
| 1603 | 1603 | ||
| 1604 | GNUTLS_LOG (1, max_log_level, "gnutls_init"); | 1604 | GNUTLS_LOG (1, max_log_level, "gnutls_init"); |
| 1605 | int nonblock = XPROCESS (proc)->is_non_blocking_client ? GNUTLS_NONBLOCK : 0; | 1605 | int gnutls_flags = GNUTLS_CLIENT; |
| 1606 | ret = gnutls_init (&state, GNUTLS_CLIENT | nonblock); | 1606 | #ifdef GNUTLS_NONBLOCK |
| 1607 | if (XPROCESS (proc)->is_non_blocking_client) | ||
| 1608 | gnutls_flags |= GNUTLS_NONBLOCK; | ||
| 1609 | #endif | ||
| 1610 | ret = gnutls_init (&state, gnutls_flags); | ||
| 1607 | XPROCESS (proc)->gnutls_state = state; | 1611 | XPROCESS (proc)->gnutls_state = state; |
| 1608 | if (ret < GNUTLS_E_SUCCESS) | 1612 | if (ret < GNUTLS_E_SUCCESS) |
| 1609 | return gnutls_make_error (ret); | 1613 | return gnutls_make_error (ret); |