Use rk_socket_t in lib/krb5/changepw.c

This commit is contained in:
Asanka C. Herath
2010-10-18 23:32:11 -04:00
parent 7cef24b902
commit 45002e092c

View File

@@ -72,7 +72,7 @@ chgpw_send_request (krb5_context context,
krb5_creds *creds, krb5_creds *creds,
krb5_principal targprinc, krb5_principal targprinc,
int is_stream, int is_stream,
int sock, rk_socket_t sock,
const char *passwd, const char *passwd,
const char *host) const char *host)
{ {
@@ -141,8 +141,8 @@ chgpw_send_request (krb5_context context,
iov[2].iov_base = krb_priv_data.data; iov[2].iov_base = krb_priv_data.data;
iov[2].iov_len = krb_priv_data.length; iov[2].iov_len = krb_priv_data.length;
if (sendmsg (sock, &msghdr, 0) < 0) { if (rk_IS_SOCKET_ERROR( sendmsg (sock, &msghdr, 0) )) {
ret = errno; ret = rk_SOCK_ERRNO;
krb5_set_error_message(context, ret, "sendmsg %s: %s", krb5_set_error_message(context, ret, "sendmsg %s: %s",
host, strerror(ret)); host, strerror(ret));
} }
@@ -164,7 +164,7 @@ setpw_send_request (krb5_context context,
krb5_creds *creds, krb5_creds *creds,
krb5_principal targprinc, krb5_principal targprinc,
int is_stream, int is_stream,
int sock, rk_socket_t sock,
const char *passwd, const char *passwd,
const char *host) const char *host)
{ {
@@ -251,8 +251,8 @@ setpw_send_request (krb5_context context,
iov[2].iov_base = krb_priv_data.data; iov[2].iov_base = krb_priv_data.data;
iov[2].iov_len = krb_priv_data.length; iov[2].iov_len = krb_priv_data.length;
if (sendmsg (sock, &msghdr, 0) < 0) { if (rk_IS_SOCKET_ERROR( sendmsg (sock, &msghdr, 0) )) {
ret = errno; ret = rk_SOCK_ERRNO;
krb5_set_error_message(context, ret, "sendmsg %s: %s", krb5_set_error_message(context, ret, "sendmsg %s: %s",
host, strerror(ret)); host, strerror(ret));
} }
@@ -268,7 +268,7 @@ static krb5_error_code
process_reply (krb5_context context, process_reply (krb5_context context,
krb5_auth_context auth_context, krb5_auth_context auth_context,
int is_stream, int is_stream,
int sock, rk_socket_t sock,
int *result_code, int *result_code,
krb5_data *result_code_string, krb5_data *result_code_string,
krb5_data *result_string, krb5_data *result_string,
@@ -288,8 +288,8 @@ process_reply (krb5_context context,
ret = recvfrom (sock, reply + len, sizeof(reply) - len, ret = recvfrom (sock, reply + len, sizeof(reply) - len,
0, NULL, NULL); 0, NULL, NULL);
if (ret < 0) { if (rk_IS_SOCKET_ERROR(ret)) {
save_errno = errno; save_errno = rk_SOCK_ERRNO;
krb5_set_error_message(context, save_errno, krb5_set_error_message(context, save_errno,
"recvfrom %s: %s", "recvfrom %s: %s",
host, strerror(save_errno)); host, strerror(save_errno));
@@ -316,8 +316,8 @@ process_reply (krb5_context context,
} }
} else { } else {
ret = recvfrom (sock, reply, sizeof(reply), 0, NULL, NULL); ret = recvfrom (sock, reply, sizeof(reply), 0, NULL, NULL);
if (ret < 0) { if (rk_IS_SOCKET_ERROR(ret)) {
save_errno = errno; save_errno = rk_SOCK_ERRNO;
krb5_set_error_message(context, save_errno, krb5_set_error_message(context, save_errno,
"recvfrom %s: %s", "recvfrom %s: %s",
host, strerror(save_errno)); host, strerror(save_errno));
@@ -517,7 +517,7 @@ change_password_loop (krb5_context context,
krb5_auth_context auth_context = NULL; krb5_auth_context auth_context = NULL;
krb5_krbhst_handle handle = NULL; krb5_krbhst_handle handle = NULL;
krb5_krbhst_info *hi; krb5_krbhst_info *hi;
int sock; rk_socket_t sock;
unsigned int i; unsigned int i;
int done = 0; int done = 0;
krb5_realm realm; krb5_realm realm;
@@ -565,20 +565,20 @@ change_password_loop (krb5_context context,
int replied = 0; int replied = 0;
sock = socket (a->ai_family, a->ai_socktype | SOCK_CLOEXEC, a->ai_protocol); sock = socket (a->ai_family, a->ai_socktype | SOCK_CLOEXEC, a->ai_protocol);
if (sock < 0) if (rk_IS_BAD_SOCKET(sock))
continue; continue;
rk_cloexec(sock); rk_cloexec(sock);
ret = connect(sock, a->ai_addr, a->ai_addrlen); ret = connect(sock, a->ai_addr, a->ai_addrlen);
if (ret < 0) { if (rk_IS_SOCKET_ERROR(ret)) {
close (sock); rk_closesocket (sock);
goto out; goto out;
} }
ret = krb5_auth_con_genaddrs (context, auth_context, sock, ret = krb5_auth_con_genaddrs (context, auth_context, sock,
KRB5_AUTH_CONTEXT_GENERATE_LOCAL_ADDR); KRB5_AUTH_CONTEXT_GENERATE_LOCAL_ADDR);
if (ret) { if (ret) {
close (sock); rk_closesocket (sock);
goto out; goto out;
} }
@@ -598,7 +598,7 @@ change_password_loop (krb5_context context,
newpw, newpw,
hi->hostname); hi->hostname);
if (ret) { if (ret) {
close(sock); rk_closesocket(sock);
goto out; goto out;
} }
} }
@@ -608,7 +608,7 @@ change_password_loop (krb5_context context,
ret = ERANGE; ret = ERANGE;
krb5_set_error_message(context, ret, krb5_set_error_message(context, ret,
"fd %d too large", sock); "fd %d too large", sock);
close (sock); rk_closesocket (sock);
goto out; goto out;
} }
#endif #endif
@@ -619,8 +619,8 @@ change_password_loop (krb5_context context,
tv.tv_sec = 1 + (1 << i); tv.tv_sec = 1 + (1 << i);
ret = select (sock + 1, &fdset, NULL, NULL, &tv); ret = select (sock + 1, &fdset, NULL, NULL, &tv);
if (ret < 0 && errno != EINTR) { if (rk_IS_SOCKET_ERROR(ret) && rk_SOCK_ERRNO != EINTR) {
close(sock); rk_closesocket(sock);
goto out; goto out;
} }
if (ret == 1) { if (ret == 1) {
@@ -640,7 +640,7 @@ change_password_loop (krb5_context context,
ret = KRB5_KDC_UNREACH; ret = KRB5_KDC_UNREACH;
} }
} }
close (sock); rk_closesocket (sock);
} }
} }