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