Deleted Added
full compact
keyserv.c (90317) keyserv.c (95658)
1/*
2 * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
3 * unrestricted use provided that this legend is included on all tape
4 * media and as a part of the software program in whole or part. Users
5 * may copy or modify Sun RPC without charge, but are not authorized
6 * to license or distribute it to anyone else except as part of a product or
7 * program developed by the user.
8 *

--- 18 unchanged lines hidden (view full) ---

27 * Mountain View, California 94043
28 */
29
30#ifndef lint
31#if 0
32static char sccsid[] = "@(#)keyserv.c 1.15 94/04/25 SMI";
33#endif
34static const char rcsid[] =
1/*
2 * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
3 * unrestricted use provided that this legend is included on all tape
4 * media and as a part of the software program in whole or part. Users
5 * may copy or modify Sun RPC without charge, but are not authorized
6 * to license or distribute it to anyone else except as part of a product or
7 * program developed by the user.
8 *

--- 18 unchanged lines hidden (view full) ---

27 * Mountain View, California 94043
28 */
29
30#ifndef lint
31#if 0
32static char sccsid[] = "@(#)keyserv.c 1.15 94/04/25 SMI";
33#endif
34static const char rcsid[] =
35 "$FreeBSD: head/usr.sbin/keyserv/keyserv.c 90317 2002-02-06 19:15:34Z alfred $";
35 "$FreeBSD: head/usr.sbin/keyserv/keyserv.c 95658 2002-04-28 15:18:50Z des $";
36#endif /* not lint */
37
38/*
39 * Copyright (c) 1986 - 1991 by Sun Microsystems, Inc.
40 */
41
42/*
43 * Keyserver

--- 584 unchanged lines hidden (view full) ---

628 cryptkeyarg key_decrypt_2_arg;
629 netnamestr key_getcred_2_arg;
630 cryptkeyarg2 key_encrypt_pk_2_arg;
631 cryptkeyarg2 key_decrypt_pk_2_arg;
632 key_netstarg key_net_put_2_arg;
633 netobj key_get_conv_2_arg;
634 } argument;
635 char *result;
36#endif /* not lint */
37
38/*
39 * Copyright (c) 1986 - 1991 by Sun Microsystems, Inc.
40 */
41
42/*
43 * Keyserver

--- 584 unchanged lines hidden (view full) ---

628 cryptkeyarg key_decrypt_2_arg;
629 netnamestr key_getcred_2_arg;
630 cryptkeyarg2 key_encrypt_pk_2_arg;
631 cryptkeyarg2 key_decrypt_pk_2_arg;
632 key_netstarg key_net_put_2_arg;
633 netobj key_get_conv_2_arg;
634 } argument;
635 char *result;
636 bool_t(*xdr_argument)(), (*xdr_result)();
636 xdrproc_t xdr_argument, xdr_result;
637 char *(*local) ();
638 uid_t uid = -1;
639 int check_auth;
640
641 switch (rqstp->rq_proc) {
642 case NULLPROC:
637 char *(*local) ();
638 uid_t uid = -1;
639 int check_auth;
640
641 switch (rqstp->rq_proc) {
642 case NULLPROC:
643 svc_sendreply(transp, xdr_void, (char *)NULL);
643 svc_sendreply(transp, (xdrproc_t)xdr_void, NULL);
644 return;
645
646 case KEY_SET:
644 return;
645
646 case KEY_SET:
647 xdr_argument = xdr_keybuf;
648 xdr_result = xdr_int;
647 xdr_argument = (xdrproc_t)xdr_keybuf;
648 xdr_result = (xdrproc_t)xdr_int;
649 local = (char *(*)()) key_set_1_svc_prog;
650 check_auth = 1;
651 break;
652
653 case KEY_ENCRYPT:
649 local = (char *(*)()) key_set_1_svc_prog;
650 check_auth = 1;
651 break;
652
653 case KEY_ENCRYPT:
654 xdr_argument = xdr_cryptkeyarg;
655 xdr_result = xdr_cryptkeyres;
654 xdr_argument = (xdrproc_t)xdr_cryptkeyarg;
655 xdr_result = (xdrproc_t)xdr_cryptkeyres;
656 local = (char *(*)()) key_encrypt_1_svc_prog;
657 check_auth = 1;
658 break;
659
660 case KEY_DECRYPT:
656 local = (char *(*)()) key_encrypt_1_svc_prog;
657 check_auth = 1;
658 break;
659
660 case KEY_DECRYPT:
661 xdr_argument = xdr_cryptkeyarg;
662 xdr_result = xdr_cryptkeyres;
661 xdr_argument = (xdrproc_t)xdr_cryptkeyarg;
662 xdr_result = (xdrproc_t)xdr_cryptkeyres;
663 local = (char *(*)()) key_decrypt_1_svc_prog;
664 check_auth = 1;
665 break;
666
667 case KEY_GEN:
663 local = (char *(*)()) key_decrypt_1_svc_prog;
664 check_auth = 1;
665 break;
666
667 case KEY_GEN:
668 xdr_argument = xdr_void;
669 xdr_result = xdr_des_block;
668 xdr_argument = (xdrproc_t)xdr_void;
669 xdr_result = (xdrproc_t)xdr_des_block;
670 local = (char *(*)()) key_gen_1_svc_prog;
671 check_auth = 0;
672 break;
673
674 case KEY_GETCRED:
670 local = (char *(*)()) key_gen_1_svc_prog;
671 check_auth = 0;
672 break;
673
674 case KEY_GETCRED:
675 xdr_argument = xdr_netnamestr;
676 xdr_result = xdr_getcredres;
675 xdr_argument = (xdrproc_t)xdr_netnamestr;
676 xdr_result = (xdrproc_t)xdr_getcredres;
677 local = (char *(*)()) key_getcred_1_svc_prog;
678 check_auth = 0;
679 break;
680
681 case KEY_ENCRYPT_PK:
677 local = (char *(*)()) key_getcred_1_svc_prog;
678 check_auth = 0;
679 break;
680
681 case KEY_ENCRYPT_PK:
682 xdr_argument = xdr_cryptkeyarg2;
683 xdr_result = xdr_cryptkeyres;
682 xdr_argument = (xdrproc_t)xdr_cryptkeyarg2;
683 xdr_result = (xdrproc_t)xdr_cryptkeyres;
684 local = (char *(*)()) key_encrypt_pk_2_svc_prog;
685 check_auth = 1;
686 break;
687
688 case KEY_DECRYPT_PK:
684 local = (char *(*)()) key_encrypt_pk_2_svc_prog;
685 check_auth = 1;
686 break;
687
688 case KEY_DECRYPT_PK:
689 xdr_argument = xdr_cryptkeyarg2;
690 xdr_result = xdr_cryptkeyres;
689 xdr_argument = (xdrproc_t)xdr_cryptkeyarg2;
690 xdr_result = (xdrproc_t)xdr_cryptkeyres;
691 local = (char *(*)()) key_decrypt_pk_2_svc_prog;
692 check_auth = 1;
693 break;
694
695
696 case KEY_NET_PUT:
691 local = (char *(*)()) key_decrypt_pk_2_svc_prog;
692 check_auth = 1;
693 break;
694
695
696 case KEY_NET_PUT:
697 xdr_argument = xdr_key_netstarg;
698 xdr_result = xdr_keystatus;
697 xdr_argument = (xdrproc_t)xdr_key_netstarg;
698 xdr_result = (xdrproc_t)xdr_keystatus;
699 local = (char *(*)()) key_net_put_2_svc_prog;
700 check_auth = 1;
701 break;
702
703 case KEY_NET_GET:
704 xdr_argument = (xdrproc_t) xdr_void;
699 local = (char *(*)()) key_net_put_2_svc_prog;
700 check_auth = 1;
701 break;
702
703 case KEY_NET_GET:
704 xdr_argument = (xdrproc_t) xdr_void;
705 xdr_result = xdr_key_netstres;
705 xdr_result = (xdrproc_t)xdr_key_netstres;
706 local = (char *(*)()) key_net_get_2_svc_prog;
707 check_auth = 1;
708 break;
709
710 case KEY_GET_CONV:
711 xdr_argument = (xdrproc_t) xdr_keybuf;
706 local = (char *(*)()) key_net_get_2_svc_prog;
707 check_auth = 1;
708 break;
709
710 case KEY_GET_CONV:
711 xdr_argument = (xdrproc_t) xdr_keybuf;
712 xdr_result = xdr_cryptkeyres;
712 xdr_result = (xdrproc_t)xdr_cryptkeyres;
713 local = (char *(*)()) key_get_conv_2_svc_prog;
714 check_auth = 1;
715 break;
716
717 default:
718 svcerr_noproc(transp);
719 return;
720 }

--- 12 unchanged lines hidden (view full) ---

733 "not unix authentication\n");
734 }
735 svcerr_weakauth(transp);
736 return;
737 }
738 uid = ((struct authsys_parms *)rqstp->rq_clntcred)->aup_uid;
739 }
740
713 local = (char *(*)()) key_get_conv_2_svc_prog;
714 check_auth = 1;
715 break;
716
717 default:
718 svcerr_noproc(transp);
719 return;
720 }

--- 12 unchanged lines hidden (view full) ---

733 "not unix authentication\n");
734 }
735 svcerr_weakauth(transp);
736 return;
737 }
738 uid = ((struct authsys_parms *)rqstp->rq_clntcred)->aup_uid;
739 }
740
741 memset((char *) &argument, 0, sizeof (argument));
742 if (!svc_getargs(transp, xdr_argument, (caddr_t)&argument)) {
741 memset(&argument, 0, sizeof (argument));
742 if (!svc_getargs(transp, xdr_argument, &argument)) {
743 svcerr_decode(transp);
744 return;
745 }
746 result = (*local) (uid, &argument);
743 svcerr_decode(transp);
744 return;
745 }
746 result = (*local) (uid, &argument);
747 if (!svc_sendreply(transp, xdr_result, (char *) result)) {
747 if (!svc_sendreply(transp, xdr_result, result)) {
748 if (debugging)
749 (void) fprintf(stderr, "unable to reply\n");
750 svcerr_systemerr(transp);
751 }
748 if (debugging)
749 (void) fprintf(stderr, "unable to reply\n");
750 svcerr_systemerr(transp);
751 }
752 if (!svc_freeargs(transp, xdr_argument, (caddr_t)&argument)) {
752 if (!svc_freeargs(transp, xdr_argument, &argument)) {
753 if (debugging)
754 (void) fprintf(stderr,
755 "unable to free arguments\n");
756 exit(1);
757 }
758 return;
759}
760

--- 52 unchanged lines hidden ---
753 if (debugging)
754 (void) fprintf(stderr,
755 "unable to free arguments\n");
756 exit(1);
757 }
758 return;
759}
760

--- 52 unchanged lines hidden ---