diff options
author | Greg Hudson <ghudson@mit.edu> | 2009-11-24 17:46:45 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2009-11-24 17:46:45 +0000 |
commit | 6b684da8b8aa0aa5e7a0f122e5d6b303c6fddf00 (patch) | |
tree | db6e8ce701a0e0a905e45c82f1c65f64a733e23c /src/appl/sample | |
parent | 3aa283767b10ac11b035b690f4569ce5de5e0097 (diff) | |
download | krb5-6b684da8b8aa0aa5e7a0f122e5d6b303c6fddf00.zip krb5-6b684da8b8aa0aa5e7a0f122e5d6b303c6fddf00.tar.gz krb5-6b684da8b8aa0aa5e7a0f122e5d6b303c6fddf00.tar.bz2 |
Mark and reindent what's left of the appl directory
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23342 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/appl/sample')
-rw-r--r-- | src/appl/sample/sample.h | 1 | ||||
-rw-r--r-- | src/appl/sample/sclient/sclient.c | 218 | ||||
-rw-r--r-- | src/appl/sample/sserver/sserver.c | 189 |
3 files changed, 203 insertions, 205 deletions
diff --git a/src/appl/sample/sample.h b/src/appl/sample/sample.h index e61a2f3..be6ef18 100644 --- a/src/appl/sample/sample.h +++ b/src/appl/sample/sample.h @@ -1,3 +1,4 @@ +/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ /* * appl/sample/sample.h * diff --git a/src/appl/sample/sclient/sclient.c b/src/appl/sample/sclient/sclient.c index 2f9b479..cf5a39f 100644 --- a/src/appl/sample/sclient/sclient.c +++ b/src/appl/sample/sclient/sclient.c @@ -1,3 +1,4 @@ +/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ /* * appl/sample/sclient/sclient.c * @@ -58,31 +59,28 @@ #endif static int -net_read(fd, buf, len) - int fd; - char *buf; - int len; +net_read(int fd, char *buf, int len) { int cc, len2 = 0; do { - cc = SOCKET_READ((SOCKET)fd, buf, len); - if (cc < 0) { - if (SOCKET_ERRNO == SOCKET_EINTR) - continue; + cc = SOCKET_READ((SOCKET)fd, buf, len); + if (cc < 0) { + if (SOCKET_ERRNO == SOCKET_EINTR) + continue; - /* XXX this interface sucks! */ - errno = SOCKET_ERRNO; + /* XXX this interface sucks! */ + errno = SOCKET_ERRNO; - return(cc); /* errno is already set */ - } - else if (cc == 0) { - return(len2); - } else { - buf += cc; - len2 += cc; - len -= cc; - } + return(cc); /* errno is already set */ + } + else if (cc == 0) { + return(len2); + } else { + buf += cc; + len2 += cc; + len -= cc; + } } while (len > 0); return(len2); } @@ -107,84 +105,84 @@ main(int argc, char *argv[]) char *service = SAMPLE_SERVICE; if (argc != 2 && argc != 3 && argc != 4) { - fprintf(stderr, "usage: %s <hostname> [port] [service]\n",argv[0]); - exit(1); + fprintf(stderr, "usage: %s <hostname> [port] [service]\n",argv[0]); + exit(1); } retval = krb5_init_context(&context); if (retval) { - com_err(argv[0], retval, "while initializing krb5"); - exit(1); + com_err(argv[0], retval, "while initializing krb5"); + exit(1); } (void) signal(SIGPIPE, SIG_IGN); if (argc > 2) - portstr = argv[2]; + portstr = argv[2]; else - portstr = SAMPLE_PORT; + portstr = SAMPLE_PORT; memset(&aihints, 0, sizeof(aihints)); aihints.ai_socktype = SOCK_STREAM; aierr = getaddrinfo(argv[1], portstr, &aihints, &ap); if (aierr) { - fprintf(stderr, "%s: error looking up host '%s' port '%s'/tcp: %s\n", - argv[0], argv[1], portstr, gai_strerror(aierr)); - exit(1); + fprintf(stderr, "%s: error looking up host '%s' port '%s'/tcp: %s\n", + argv[0], argv[1], portstr, gai_strerror(aierr)); + exit(1); } if (ap == 0) { - /* Should never happen. */ - fprintf(stderr, "%s: error looking up host '%s' port '%s'/tcp: no addresses returned?\n", - argv[0], argv[1], portstr); - exit(1); + /* Should never happen. */ + fprintf(stderr, "%s: error looking up host '%s' port '%s'/tcp: no addresses returned?\n", + argv[0], argv[1], portstr); + exit(1); } if (argc > 3) { - service = argv[3]; + service = argv[3]; } retval = krb5_sname_to_principal(context, argv[1], service, - KRB5_NT_SRV_HST, &server); + KRB5_NT_SRV_HST, &server); if (retval) { - com_err(argv[0], retval, "while creating server name for host %s service %s", - argv[1], service); - exit(1); + com_err(argv[0], retval, "while creating server name for host %s service %s", + argv[1], service); + exit(1); } /* set up the address of the foreign socket for connect() */ apstart = ap; /* For freeing later */ for (sock = -1; ap && sock == -1; ap = ap->ai_next) { - char abuf[NI_MAXHOST], pbuf[NI_MAXSERV]; - char mbuf[NI_MAXHOST + NI_MAXSERV + 64]; - if (getnameinfo(ap->ai_addr, ap->ai_addrlen, abuf, sizeof(abuf), - pbuf, sizeof(pbuf), NI_NUMERICHOST | NI_NUMERICSERV)) { - memset(abuf, 0, sizeof(abuf)); - memset(pbuf, 0, sizeof(pbuf)); - strncpy(abuf, "[error, cannot print address?]", - sizeof(abuf)-1); - strncpy(pbuf, "[?]", sizeof(pbuf)-1); - } - memset(mbuf, 0, sizeof(mbuf)); - strncpy(mbuf, "error contacting ", sizeof(mbuf)-1); - strncat(mbuf, abuf, sizeof(mbuf) - strlen(mbuf) - 1); - strncat(mbuf, " port ", sizeof(mbuf) - strlen(mbuf) - 1); - strncat(mbuf, pbuf, sizeof(mbuf) - strlen(mbuf) - 1); - sock = socket(ap->ai_family, SOCK_STREAM, 0); - if (sock < 0) { - fprintf(stderr, "%s: socket: %s\n", mbuf, strerror(errno)); - continue; - } - if (connect(sock, ap->ai_addr, ap->ai_addrlen) < 0) { - fprintf(stderr, "%s: connect: %s\n", mbuf, strerror(errno)); - close(sock); - sock = -1; - continue; - } - /* connected, yay! */ + char abuf[NI_MAXHOST], pbuf[NI_MAXSERV]; + char mbuf[NI_MAXHOST + NI_MAXSERV + 64]; + if (getnameinfo(ap->ai_addr, ap->ai_addrlen, abuf, sizeof(abuf), + pbuf, sizeof(pbuf), NI_NUMERICHOST | NI_NUMERICSERV)) { + memset(abuf, 0, sizeof(abuf)); + memset(pbuf, 0, sizeof(pbuf)); + strncpy(abuf, "[error, cannot print address?]", + sizeof(abuf)-1); + strncpy(pbuf, "[?]", sizeof(pbuf)-1); + } + memset(mbuf, 0, sizeof(mbuf)); + strncpy(mbuf, "error contacting ", sizeof(mbuf)-1); + strncat(mbuf, abuf, sizeof(mbuf) - strlen(mbuf) - 1); + strncat(mbuf, " port ", sizeof(mbuf) - strlen(mbuf) - 1); + strncat(mbuf, pbuf, sizeof(mbuf) - strlen(mbuf) - 1); + sock = socket(ap->ai_family, SOCK_STREAM, 0); + if (sock < 0) { + fprintf(stderr, "%s: socket: %s\n", mbuf, strerror(errno)); + continue; + } + if (connect(sock, ap->ai_addr, ap->ai_addrlen) < 0) { + fprintf(stderr, "%s: connect: %s\n", mbuf, strerror(errno)); + close(sock); + sock = -1; + continue; + } + /* connected, yay! */ } if (sock == -1) - /* Already printed error message above. */ - exit(1); + /* Already printed error message above. */ + exit(1); printf("connected\n"); cksum_data.data = argv[1]; @@ -192,67 +190,67 @@ main(int argc, char *argv[]) retval = krb5_cc_default(context, &ccdef); if (retval) { - com_err(argv[0], retval, "while getting default ccache"); - exit(1); + com_err(argv[0], retval, "while getting default ccache"); + exit(1); } retval = krb5_cc_get_principal(context, ccdef, &client); if (retval) { - com_err(argv[0], retval, "while getting client principal name"); - exit(1); + com_err(argv[0], retval, "while getting client principal name"); + exit(1); } retval = krb5_sendauth(context, &auth_context, (krb5_pointer) &sock, - SAMPLE_VERSION, client, server, - AP_OPTS_MUTUAL_REQUIRED, - &cksum_data, - 0, /* no creds, use ccache instead */ - ccdef, &err_ret, &rep_ret, NULL); + SAMPLE_VERSION, client, server, + AP_OPTS_MUTUAL_REQUIRED, + &cksum_data, + 0, /* no creds, use ccache instead */ + ccdef, &err_ret, &rep_ret, NULL); - krb5_free_principal(context, server); /* finished using it */ + krb5_free_principal(context, server); /* finished using it */ krb5_free_principal(context, client); krb5_cc_close(context, ccdef); if (auth_context) krb5_auth_con_free(context, auth_context); if (retval && retval != KRB5_SENDAUTH_REJECTED) { - com_err(argv[0], retval, "while using sendauth"); - exit(1); + com_err(argv[0], retval, "while using sendauth"); + exit(1); } if (retval == KRB5_SENDAUTH_REJECTED) { - /* got an error */ - printf("sendauth rejected, error reply is:\n\t\"%*s\"\n", - err_ret->text.length, err_ret->text.data); + /* got an error */ + printf("sendauth rejected, error reply is:\n\t\"%*s\"\n", + err_ret->text.length, err_ret->text.data); } else if (rep_ret) { - /* got a reply */ - krb5_free_ap_rep_enc_part(context, rep_ret); + /* got a reply */ + krb5_free_ap_rep_enc_part(context, rep_ret); - printf("sendauth succeeded, reply is:\n"); - if ((retval = net_read(sock, (char *)&xmitlen, - sizeof(xmitlen))) <= 0) { - if (retval == 0) - errno = ECONNABORTED; - com_err(argv[0], errno, "while reading data from server"); - exit(1); - } - recv_data.length = ntohs(xmitlen); - if (!(recv_data.data = (char *)malloc((size_t) recv_data.length + 1))) { - com_err(argv[0], ENOMEM, - "while allocating buffer to read from server"); - exit(1); - } - if ((retval = net_read(sock, (char *)recv_data.data, - recv_data.length)) <= 0) { - if (retval == 0) - errno = ECONNABORTED; - com_err(argv[0], errno, "while reading data from server"); - exit(1); - } - recv_data.data[recv_data.length] = '\0'; - printf("reply len %d, contents:\n%s\n", - recv_data.length,recv_data.data); - free(recv_data.data); + printf("sendauth succeeded, reply is:\n"); + if ((retval = net_read(sock, (char *)&xmitlen, + sizeof(xmitlen))) <= 0) { + if (retval == 0) + errno = ECONNABORTED; + com_err(argv[0], errno, "while reading data from server"); + exit(1); + } + recv_data.length = ntohs(xmitlen); + if (!(recv_data.data = (char *)malloc((size_t) recv_data.length + 1))) { + com_err(argv[0], ENOMEM, + "while allocating buffer to read from server"); + exit(1); + } + if ((retval = net_read(sock, (char *)recv_data.data, + recv_data.length)) <= 0) { + if (retval == 0) + errno = ECONNABORTED; + com_err(argv[0], errno, "while reading data from server"); + exit(1); + } + recv_data.data[recv_data.length] = '\0'; + printf("reply len %d, contents:\n%s\n", + recv_data.length,recv_data.data); + free(recv_data.data); } else { - com_err(argv[0], 0, "no error or reply from sendauth!"); - exit(1); + com_err(argv[0], 0, "no error or reply from sendauth!"); + exit(1); } freeaddrinfo(apstart); krb5_free_context(context); diff --git a/src/appl/sample/sserver/sserver.c b/src/appl/sample/sserver/sserver.c index 0ad9c07..bdd69a8 100644 --- a/src/appl/sample/sserver/sserver.c +++ b/src/appl/sample/sserver/sserver.c @@ -1,3 +1,4 @@ +/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ /* * appl/sample/sserver/sserver.c * @@ -64,24 +65,21 @@ extern krb5_deltat krb5_clockskew; #define DEBUG static void -usage(name) - char *name; +usage(char *name) { - fprintf(stderr, "usage: %s [-p port] [-s service] [-S keytab]\n", - name); + fprintf(stderr, "usage: %s [-p port] [-s service] [-S keytab]\n", + name); } int -main(argc, argv) - int argc; - char *argv[]; +main(int argc, char *argv[]) { krb5_context context; krb5_auth_context auth_context = NULL; krb5_ticket * ticket; struct sockaddr_in peername; GETPEERNAME_ARG3_TYPE namelen = sizeof(peername); - int sock = -1; /* incoming connection fd */ + int sock = -1; /* incoming connection fd */ krb5_data recv_data; short xmitlen; krb5_error_code retval; @@ -89,11 +87,11 @@ main(argc, argv) char repbuf[BUFSIZ]; char *cname; char *service = SAMPLE_SERVICE; - short port = 0; /* If user specifies port */ + short port = 0; /* If user specifies port */ extern int opterr, optind; extern char * optarg; int ch; - krb5_keytab keytab = NULL; /* Allow specification on command line */ + krb5_keytab keytab = NULL; /* Allow specification on command line */ char *progname; int on = 1; @@ -101,8 +99,8 @@ main(argc, argv) retval = krb5_init_context(&context); if (retval) { - com_err(argv[0], retval, "while initializing krb5"); - exit(1); + com_err(argv[0], retval, "while initializing krb5"); + exit(1); } /* open a log connection */ @@ -113,27 +111,28 @@ main(argc, argv) * */ opterr = 0; - while ((ch = getopt(argc, argv, "p:S:s:")) != -1) - switch (ch) { - case 'p': - port = atoi(optarg); - break; - case 's': - service = optarg; - break; - case 'S': - if ((retval = krb5_kt_resolve(context, optarg, &keytab))) { - com_err(progname, retval, - "while resolving keytab file %s", optarg); - exit(2); - } - break; - - case '?': - default: - usage(progname); - exit(1); - break; + while ((ch = getopt(argc, argv, "p:S:s:")) != -1) { + switch (ch) { + case 'p': + port = atoi(optarg); + break; + case 's': + service = optarg; + break; + case 'S': + if ((retval = krb5_kt_resolve(context, optarg, &keytab))) { + com_err(progname, retval, + "while resolving keytab file %s", optarg); + exit(2); + } + break; + + case '?': + default: + usage(progname); + exit(1); + break; + } } argc -= optind; @@ -141,15 +140,15 @@ main(argc, argv) /* Backwards compatibility, allow port to be specified at end */ if (argc > 1) { - port = atoi(argv[1]); + port = atoi(argv[1]); } retval = krb5_sname_to_principal(context, NULL, service, - KRB5_NT_SRV_HST, &server); + KRB5_NT_SRV_HST, &server); if (retval) { - syslog(LOG_ERR, "while generating service name (%s): %s", - service, error_message(retval)); - exit(1); + syslog(LOG_ERR, "while generating service name (%s): %s", + service, error_message(retval)); + exit(1); } /* @@ -158,86 +157,86 @@ main(argc, argv) */ if (port) { - int acc; - struct sockaddr_in sockin; - - if ((sock = socket(PF_INET, SOCK_STREAM, 0)) < 0) { - syslog(LOG_ERR, "socket: %m"); - exit(3); - } - /* Let the socket be reused right away */ - (void) setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (char *)&on, - sizeof(on)); - - sockin.sin_family = AF_INET; - sockin.sin_addr.s_addr = 0; - sockin.sin_port = htons(port); - if (bind(sock, (struct sockaddr *) &sockin, sizeof(sockin))) { - syslog(LOG_ERR, "bind: %m"); - exit(3); - } - if (listen(sock, 1) == -1) { - syslog(LOG_ERR, "listen: %m"); - exit(3); - } - if ((acc = accept(sock, (struct sockaddr *)&peername, &namelen)) == -1){ - syslog(LOG_ERR, "accept: %m"); - exit(3); - } - dup2(acc, 0); - close(sock); - sock = 0; + int acc; + struct sockaddr_in sockin; + + if ((sock = socket(PF_INET, SOCK_STREAM, 0)) < 0) { + syslog(LOG_ERR, "socket: %m"); + exit(3); + } + /* Let the socket be reused right away */ + (void) setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (char *)&on, + sizeof(on)); + + sockin.sin_family = AF_INET; + sockin.sin_addr.s_addr = 0; + sockin.sin_port = htons(port); + if (bind(sock, (struct sockaddr *) &sockin, sizeof(sockin))) { + syslog(LOG_ERR, "bind: %m"); + exit(3); + } + if (listen(sock, 1) == -1) { + syslog(LOG_ERR, "listen: %m"); + exit(3); + } + if ((acc = accept(sock, (struct sockaddr *)&peername, &namelen)) == -1){ + syslog(LOG_ERR, "accept: %m"); + exit(3); + } + dup2(acc, 0); + close(sock); + sock = 0; } else { - /* - * To verify authenticity, we need to know the address of the - * client. - */ - if (getpeername(0, (struct sockaddr *)&peername, &namelen) < 0) { - syslog(LOG_ERR, "getpeername: %m"); - exit(1); - } - sock = 0; + /* + * To verify authenticity, we need to know the address of the + * client. + */ + if (getpeername(0, (struct sockaddr *)&peername, &namelen) < 0) { + syslog(LOG_ERR, "getpeername: %m"); + exit(1); + } + sock = 0; } retval = krb5_recvauth(context, &auth_context, (krb5_pointer)&sock, - SAMPLE_VERSION, server, - 0, /* no flags */ - keytab, /* default keytab is NULL */ - &ticket); + SAMPLE_VERSION, server, + 0, /* no flags */ + keytab, /* default keytab is NULL */ + &ticket); if (retval) { - syslog(LOG_ERR, "recvauth failed--%s", error_message(retval)); - exit(1); + syslog(LOG_ERR, "recvauth failed--%s", error_message(retval)); + exit(1); } /* Get client name */ repbuf[sizeof(repbuf) - 1] = '\0'; retval = krb5_unparse_name(context, ticket->enc_part2->client, &cname); if (retval){ - syslog(LOG_ERR, "unparse failed: %s", error_message(retval)); - strncpy(repbuf, "You are <unparse error>\n", sizeof(repbuf) - 1); + syslog(LOG_ERR, "unparse failed: %s", error_message(retval)); + strncpy(repbuf, "You are <unparse error>\n", sizeof(repbuf) - 1); } else { - strncpy(repbuf, "You are ", sizeof(repbuf) - 1); - strncat(repbuf, cname, sizeof(repbuf) - 1 - strlen(repbuf)); - strncat(repbuf, "\n", sizeof(repbuf) - 1 - strlen(repbuf)); - free(cname); + strncpy(repbuf, "You are ", sizeof(repbuf) - 1); + strncat(repbuf, cname, sizeof(repbuf) - 1 - strlen(repbuf)); + strncat(repbuf, "\n", sizeof(repbuf) - 1 - strlen(repbuf)); + free(cname); } xmitlen = htons(strlen(repbuf)); recv_data.length = strlen(repbuf); recv_data.data = repbuf; if ((retval = krb5_net_write(context, 0, (char *)&xmitlen, - sizeof(xmitlen))) < 0) { - syslog(LOG_ERR, "%m: while writing len to client"); - exit(1); + sizeof(xmitlen))) < 0) { + syslog(LOG_ERR, "%m: while writing len to client"); + exit(1); } if ((retval = krb5_net_write(context, 0, (char *)recv_data.data, - recv_data.length)) < 0) { - syslog(LOG_ERR, "%m: while writing data to client"); - exit(1); + recv_data.length)) < 0) { + syslog(LOG_ERR, "%m: while writing data to client"); + exit(1); } krb5_free_ticket(context, ticket); if(keytab) - krb5_kt_close(context, keytab); + krb5_kt_close(context, keytab); krb5_free_principal(context, server); krb5_auth_con_free(context, auth_context); krb5_free_context(context); |