X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libraries%2Flibldap%2Fos-local.c;h=6ccb1f4bd7b7c75474dd4046e5014fec77d8df25;hb=d2b05a3858822df66785b4a0939204b10ac1c47f;hp=baae3da352fb89e668c9479b424f8bd0fdee782a;hpb=29d9fa20a2823c827f098d78f1ea8539d86bf4cf;p=openldap diff --git a/libraries/libldap/os-local.c b/libraries/libldap/os-local.c index baae3da352..6ccb1f4bd7 100644 --- a/libraries/libldap/os-local.c +++ b/libraries/libldap/os-local.c @@ -33,6 +33,7 @@ #endif /* HAVE_IO_H */ #include "ldap-int.h" +#include "ldap_defaults.h" /* int ldap_int_tblsize = 0; */ @@ -64,7 +65,7 @@ ldap_pvt_ndelay_off(LDAP *ld, int fd) static ber_socket_t ldap_pvt_socket(LDAP *ld) { - ber_socket_t s = socket(AF_UNIX, SOCK_STREAM, 0); + ber_socket_t s = socket(PF_LOCAL, SOCK_STREAM, 0); oslocal_debug(ld, "ldap_new_socket: %d\n",s,0,0); return ( s ); } @@ -82,7 +83,7 @@ ldap_pvt_close_socket(LDAP *ld, int s) "ldap_is_socket_ready: errror on socket %d: errno: %d (%s)\n", \ s, \ errno, \ - strerror(errno) ); \ + STRERROR(errno) ); \ } while( 0 ) /* @@ -110,10 +111,10 @@ ldap_pvt_is_socket_ready(LDAP *ld, int s) #else { /* error slippery */ - struct sockaddr_un sun; + struct sockaddr_un sa; char ch; - int dummy = sizeof(sun); - if ( getpeername( s, (struct sockaddr *) &sun, &dummy ) == -1 ) { + int dummy = sizeof(sa); + if ( getpeername( s, (struct sockaddr *) &sa, &dummy ) == -1 ) { /* XXX: needs to be replace with ber_stream_read() */ read(s, &ch, 1); TRACE; @@ -127,7 +128,7 @@ ldap_pvt_is_socket_ready(LDAP *ld, int s) #undef TRACE static int -ldap_pvt_connect(LDAP *ld, ber_socket_t s, struct sockaddr_un *sun, int async) +ldap_pvt_connect(LDAP *ld, ber_socket_t s, struct sockaddr_un *sa, int async) { struct timeval tv, *opt_tv=NULL; fd_set wfds, *z=NULL; @@ -143,7 +144,7 @@ ldap_pvt_connect(LDAP *ld, ber_socket_t s, struct sockaddr_un *sun, int async) if ( ldap_pvt_ndelay_on(ld, s) == -1 ) return ( -1 ); - if ( connect(s, (struct sockaddr *) sun, sizeof(struct sockaddr_un)) == 0 ) + if ( connect(s, (struct sockaddr *) sa, sizeof(struct sockaddr_un)) == 0 ) { if ( ldap_pvt_ndelay_off(ld, s) == -1 ) return ( -1 ); @@ -191,7 +192,7 @@ ldap_connect_to_path(LDAP *ld, Sockbuf *sb, const char *path, int async) } if ( path == NULL || path[0] == '\0' ) { - path = "/tmp/.ldap-sock"; + path = LDAPI_SOCK; } else { if ( strlen(path) > (sizeof( server.sun_path ) - 1) ) { ldap_pvt_set_errno( ENAMETOOLONG ); @@ -201,14 +202,14 @@ ldap_connect_to_path(LDAP *ld, Sockbuf *sb, const char *path, int async) oslocal_debug(ld, "ldap_connect_to_path: Trying %s\n", path, 0, 0); - memset( &server, 0, sizeof(server) ); - server.sun_family = AF_UNIX; + memset( &server, '\0', sizeof(server) ); + server.sun_family = AF_LOCAL; strcpy( server.sun_path, path ); rc = ldap_pvt_connect(ld, s, &server, async); if (rc == 0) { - ber_pvt_sb_set_desc( sb, s ); + ber_sockbuf_ctrl( sb, LBER_SB_OPT_SET_FD, (void *)&s ); } else { ldap_pvt_close_socket(ld, s); }