From 8bdde6b14ce3b5fd71c772a578fcbd4b6fa6df19 Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Tue, 4 May 2021 16:14:13 +0200
Subject: [PATCH] openldap: replace ldap_ prefix on private functions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Since openldap itself uses that prefix and with OpenĹDAP 2.5.4 (at
least) there's a symbol collision because of that.
The private functions now use the 'oldap_' prefix where it previously
used 'ldap_'.
Reported-by: 3eka on github
Fixes #7004
Closes #7005
---
lib/openldap.c | 67 +++++++++++++++++++++++++-------------------------
1 file changed, 34 insertions(+), 33 deletions(-)
diff --git a/lib/openldap.c b/lib/openldap.c
index a5560fc9b294..20d4f51a64c3 100644
a
|
b
|
extern int ldap_init_fd(ber_socket_t fd, int proto, const char *url,
|
76 | 76 | LDAP **ld); |
77 | 77 | #endif |
78 | 78 | |
79 | | static CURLcode ldap_setup_connection(struct Curl_easy *data, |
80 | | struct connectdata *conn); |
81 | | static CURLcode ldap_do(struct Curl_easy *data, bool *done); |
82 | | static CURLcode ldap_done(struct Curl_easy *data, CURLcode, bool); |
83 | | static CURLcode ldap_connect(struct Curl_easy *data, bool *done); |
84 | | static CURLcode ldap_connecting(struct Curl_easy *data, bool *done); |
85 | | static CURLcode ldap_disconnect(struct Curl_easy *data, |
86 | | struct connectdata *conn, bool dead); |
| 79 | static CURLcode oldap_setup_connection(struct Curl_easy *data, |
| 80 | struct connectdata *conn); |
| 81 | static CURLcode oldap_do(struct Curl_easy *data, bool *done); |
| 82 | static CURLcode oldap_done(struct Curl_easy *data, CURLcode, bool); |
| 83 | static CURLcode oldap_connect(struct Curl_easy *data, bool *done); |
| 84 | static CURLcode oldap_connecting(struct Curl_easy *data, bool *done); |
| 85 | static CURLcode oldap_disconnect(struct Curl_easy *data, |
| 86 | struct connectdata *conn, bool dead); |
87 | 87 | |
88 | | static Curl_recv ldap_recv; |
| 88 | static Curl_recv oldap_recv; |
89 | 89 | |
90 | 90 | /* |
91 | 91 | * LDAP protocol handler. |
… |
… |
static Curl_recv ldap_recv;
|
93 | 93 | |
94 | 94 | const struct Curl_handler Curl_handler_ldap = { |
95 | 95 | "LDAP", /* scheme */ |
96 | | ldap_setup_connection, /* setup_connection */ |
97 | | ldap_do, /* do_it */ |
98 | | ldap_done, /* done */ |
| 96 | oldap_setup_connection, /* setup_connection */ |
| 97 | oldap_do, /* do_it */ |
| 98 | oldap_done, /* done */ |
99 | 99 | ZERO_NULL, /* do_more */ |
100 | | ldap_connect, /* connect_it */ |
101 | | ldap_connecting, /* connecting */ |
| 100 | oldap_connect, /* connect_it */ |
| 101 | oldap_connecting, /* connecting */ |
102 | 102 | ZERO_NULL, /* doing */ |
103 | 103 | ZERO_NULL, /* proto_getsock */ |
104 | 104 | ZERO_NULL, /* doing_getsock */ |
105 | 105 | ZERO_NULL, /* domore_getsock */ |
106 | 106 | ZERO_NULL, /* perform_getsock */ |
107 | | ldap_disconnect, /* disconnect */ |
| 107 | oldap_disconnect, /* disconnect */ |
108 | 108 | ZERO_NULL, /* readwrite */ |
109 | 109 | ZERO_NULL, /* connection_check */ |
110 | 110 | PORT_LDAP, /* defport */ |
… |
… |
const struct Curl_handler Curl_handler_ldap = {
|
120 | 120 | |
121 | 121 | const struct Curl_handler Curl_handler_ldaps = { |
122 | 122 | "LDAPS", /* scheme */ |
123 | | ldap_setup_connection, /* setup_connection */ |
124 | | ldap_do, /* do_it */ |
125 | | ldap_done, /* done */ |
| 123 | oldap_setup_connection, /* setup_connection */ |
| 124 | oldap_do, /* do_it */ |
| 125 | oldap_done, /* done */ |
126 | 126 | ZERO_NULL, /* do_more */ |
127 | | ldap_connect, /* connect_it */ |
128 | | ldap_connecting, /* connecting */ |
| 127 | oldap_connect, /* connect_it */ |
| 128 | oldap_connecting, /* connecting */ |
129 | 129 | ZERO_NULL, /* doing */ |
130 | 130 | ZERO_NULL, /* proto_getsock */ |
131 | 131 | ZERO_NULL, /* doing_getsock */ |
132 | 132 | ZERO_NULL, /* domore_getsock */ |
133 | 133 | ZERO_NULL, /* perform_getsock */ |
134 | | ldap_disconnect, /* disconnect */ |
| 134 | oldap_disconnect, /* disconnect */ |
135 | 135 | ZERO_NULL, /* readwrite */ |
136 | 136 | ZERO_NULL, /* connection_check */ |
137 | 137 | PORT_LDAPS, /* defport */ |
… |
… |
struct ldapreqinfo {
|
171 | 171 | int nument; |
172 | 172 | }; |
173 | 173 | |
174 | | static CURLcode ldap_setup_connection(struct Curl_easy *data, |
175 | | struct connectdata *conn) |
| 174 | static CURLcode oldap_setup_connection(struct Curl_easy *data, |
| 175 | struct connectdata *conn) |
176 | 176 | { |
177 | 177 | struct ldapconninfo *li; |
178 | 178 | LDAPURLDesc *lud; |
… |
… |
static CURLcode ldap_setup_connection(struct Curl_easy *data,
|
207 | 207 | static Sockbuf_IO ldapsb_tls; |
208 | 208 | #endif |
209 | 209 | |
210 | | static CURLcode ldap_connect(struct Curl_easy *data, bool *done) |
| 210 | static CURLcode oldap_connect(struct Curl_easy *data, bool *done) |
211 | 211 | { |
212 | 212 | struct connectdata *conn = data->conn; |
213 | 213 | struct ldapconninfo *li = conn->proto.ldapc; |
… |
… |
static CURLcode ldap_connect(struct Curl_easy *data, bool *done)
|
255 | 255 | return CURLE_OK; |
256 | 256 | } |
257 | 257 | |
258 | | static CURLcode ldap_connecting(struct Curl_easy *data, bool *done) |
| 258 | static CURLcode oldap_connecting(struct Curl_easy *data, bool *done) |
259 | 259 | { |
260 | 260 | struct connectdata *conn = data->conn; |
261 | 261 | struct ldapconninfo *li = conn->proto.ldapc; |
… |
… |
static CURLcode ldap_connecting(struct Curl_easy *data, bool *done)
|
354 | 354 | |
355 | 355 | if(info) |
356 | 356 | ldap_memfree(info); |
357 | | conn->recv[FIRSTSOCKET] = ldap_recv; |
| 357 | conn->recv[FIRSTSOCKET] = oldap_recv; |
358 | 358 | *done = TRUE; |
359 | 359 | |
360 | 360 | return CURLE_OK; |
361 | 361 | } |
362 | 362 | |
363 | | static CURLcode ldap_disconnect(struct Curl_easy *data, |
364 | | struct connectdata *conn, bool dead_connection) |
| 363 | static CURLcode oldap_disconnect(struct Curl_easy *data, |
| 364 | struct connectdata *conn, |
| 365 | bool dead_connection) |
365 | 366 | { |
366 | 367 | struct ldapconninfo *li = conn->proto.ldapc; |
367 | 368 | (void) dead_connection; |
… |
… |
static CURLcode ldap_disconnect(struct Curl_easy *data,
|
384 | 385 | return CURLE_OK; |
385 | 386 | } |
386 | 387 | |
387 | | static CURLcode ldap_do(struct Curl_easy *data, bool *done) |
| 388 | static CURLcode oldap_do(struct Curl_easy *data, bool *done) |
388 | 389 | { |
389 | 390 | struct connectdata *conn = data->conn; |
390 | 391 | struct ldapconninfo *li = conn->proto.ldapc; |
… |
… |
static CURLcode ldap_do(struct Curl_easy *data, bool *done)
|
429 | 430 | return CURLE_OK; |
430 | 431 | } |
431 | 432 | |
432 | | static CURLcode ldap_done(struct Curl_easy *data, CURLcode res, |
433 | | bool premature) |
| 433 | static CURLcode oldap_done(struct Curl_easy *data, CURLcode res, |
| 434 | bool premature) |
434 | 435 | { |
435 | 436 | struct connectdata *conn = data->conn; |
436 | 437 | struct ldapreqinfo *lr = data->req.p.ldap; |
… |
… |
static CURLcode ldap_done(struct Curl_easy *data, CURLcode res,
|
452 | 453 | return CURLE_OK; |
453 | 454 | } |
454 | 455 | |
455 | | static ssize_t ldap_recv(struct Curl_easy *data, int sockindex, char *buf, |
456 | | size_t len, CURLcode *err) |
| 456 | static ssize_t oldap_recv(struct Curl_easy *data, int sockindex, char *buf, |
| 457 | size_t len, CURLcode *err) |
457 | 458 | { |
458 | 459 | struct connectdata *conn = data->conn; |
459 | 460 | struct ldapconninfo *li = conn->proto.ldapc; |