First pass to make the new kadm stuff compile cleanly on the PC. No test
authorKeith Vetter <keithv@fusion.com>
Fri, 26 May 1995 01:01:34 +0000 (01:01 +0000)
committerKeith Vetter <keithv@fusion.com>
Fri, 26 May 1995 01:01:34 +0000 (01:01 +0000)
for correctness yet.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5880 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/kadm/ChangeLog
src/lib/kadm/Makefile.in
src/lib/kadm/adm_conn.c
src/lib/kadm/adm_kt_enc.c
src/lib/kadm/adm_kw_dec.c
src/lib/kadm/adm_kw_enc.c
src/lib/kadm/adm_rw.c

index f41ee3fe58b6a0980edf03d665311e8ddf0c2ce7..441a77ed80e8805cfd8128fc492e87d2e59a9220 100644 (file)
@@ -1,3 +1,14 @@
+Thu May 25 17:49:06 1995 Keith Vetter (keithv@fusion.com)
+
+       First pass to make the code compile cleanly on the PC.
+       * Makefile.in: made to work on the PC.
+       * adm_conn.c: used atoi instead of sscanf since it can't be
+          used in a windows DLL. Why not? Ask Microsoft.
+       * adm_kt_e.c, adm_kw_e.c, adm_rw.c: made the explicit the
+          cast to a char when pulling out bytes from an int.
+       * adm_kw_d.c: size_t != off_t on the PC. Fixed the equation.
+       * adm_rw.c: two parameters were declared as int but prototyped
+          as krb5_int32.
 
 Tue May 16 13:58:30 EDT 1995   Paul Park       (pjpark@mit.edu)
        * configure.in  - Check for srand48, srand and srandom along with
index a3e23c62de1a5f6ba5eca52f58c1f1c3d8417db4..b86bd691b55321c4f9423ddfe771c1586599648f 100644 (file)
@@ -1,14 +1,16 @@
 CFLAGS = $(CCOPTS) $(DEFS) 
 LDFLAGS = -g
 
-all:: $(OBJS)
+##DOSBUILDTOP = ..\..
+##DOSLIBNAME=kadm.lib
+##DOS!include $(BUILDTOP)\config\windows.in
 
-OBJS=  adm_conn.o      \
-       adm_kw_dec.o    \
-       adm_kw_enc.o    \
-       adm_kt_dec.o    \
-       adm_kt_enc.o    \
-       adm_rw.o
+OBJS=  adm_conn.$(OBJEXT)      \
+       adm_kw_dec.$(OBJEXT)    \
+       adm_kw_enc.$(OBJEXT)    \
+       adm_kt_dec.$(OBJEXT)    \
+       adm_kt_enc.$(OBJEXT)    \
+       adm_rw.$(OBJEXT)
 
 SRCS=  $(srcdir)/adm_conn.c    \
        $(srcdir)/adm_kw_dec.c  \
@@ -17,7 +19,9 @@ SRCS= $(srcdir)/adm_conn.c    \
        $(srcdir)/adm_kt_enc.c  \
        $(srcdir)/adm_rw.c
 
-libkadm.a: ${OBJS}
+all:: $(OBJS)
+
+libkadm.a: $(OBJS)
        $(RM) $@
        $(ARADD) $@ $(OBJS)
        $(RANLIB) $@
@@ -30,7 +34,7 @@ install:: libkadm.a
        $(RANLIB) $(DESTDIR)$(KRB5_LIBDIR)/libkadm.a
 
 clean::
-       $(RM) libkadm.a
+       $(RM) libkadm.$(LIBEXT)
 
 #
 # t_dbentry
index 15651af579e36c68b82fe9d127b3e822a433a218..c3979a03d58de94d0d3b9ad027e3e576d2c6df25 100644 (file)
@@ -288,7 +288,9 @@ kadm_contact_server(kcontext, realmp, sockp, local, remote)
            if (cport) {
                *cport = '\0';
                cport++;
-               if (sscanf(cport, "%d", &pport) != 1) {
+
+               pport = atoi (cport);
+               if (pport == 0) {
                    kret = KRB5_CONFIG_BADFORMAT;
                    goto cleanup;
                }
index 1870719348c6a0cf99010117494fca087cfbee07..c63012361ffd92549d8e22c64ea10178037aa275 100644 (file)
@@ -72,13 +72,13 @@ krb5_adm_ktent_to_proto(kcontext, ktentp, ncompp, complistp)
            (char *) malloc(sizeof(krb5_ui_4))) {
            clist[KRB5_ADM_KT_TIMESTAMP].length = sizeof(krb5_ui_4);
            clist[KRB5_ADM_KT_TIMESTAMP].data[0] =
-               (ktentp->timestamp >> 24) & 0xff;
+               (char) ((ktentp->timestamp >> 24) & 0xff);
            clist[KRB5_ADM_KT_TIMESTAMP].data[1] =
-               (ktentp->timestamp >> 16) & 0xff;
+               (char) ((ktentp->timestamp >> 16) & 0xff);
            clist[KRB5_ADM_KT_TIMESTAMP].data[2] =
-               (ktentp->timestamp >> 8) & 0xff;
+               (char) ((ktentp->timestamp >> 8) & 0xff);
            clist[KRB5_ADM_KT_TIMESTAMP].data[3] =
-               ktentp->timestamp & 0xff;
+               (char) (ktentp->timestamp & 0xff);
            nents++;
        }
        else {
index d66f615169da3163b9cdfb70f25a7c00d871f3c3..0fd53829b602489f1644c5f2ba1c1ca3ca6fe7c3 100644 (file)
@@ -106,7 +106,7 @@ decode_kw_string(dataentp, keyword, stringp)
     kret = ENOENT;
     if ((valueoff = keyword_value(dataentp, keyword, 1)) >= 0) {
        kret = ENOMEM;
-       len2copy = dataentp->length - valueoff;
+       len2copy = (size_t) ((off_t) dataentp->length - valueoff);
        *stringp = (char *) malloc(len2copy+1);
        if (*stringp) {
            strncpy(*stringp, &dataentp->data[valueoff], len2copy);
@@ -134,7 +134,7 @@ decode_kw_integer(dataentp, keyword, uintp)
     kret = ENOENT;
     if ((voff = keyword_value(dataentp, keyword, 1)) >= 0) {
        kret = EINVAL;
-       len2copy = dataentp->length - voff;
+       len2copy = (size_t) ((off_t) dataentp->length - voff);
        if (len2copy == sizeof(krb5_ui_4)) {
            *uintp = (((krb5_int32) ((unsigned char) dataentp->data[voff])
                       << 24) +
index 9e26f12a6c2d118a646d6c44813baea0c4f4f2b1..7a6304a87584e8e06e49c685805f73df43429d34 100644 (file)
@@ -99,10 +99,10 @@ format_kw_integer(datap, kwordp, val)
     if (datap->data) {
        datap->length = strlen(fbuffer);
        strcpy(datap->data, fbuffer);
-       datap->data[datap->length] = (val >> 24) & 0xff;
-       datap->data[datap->length+1] = (val >> 16) & 0xff;
-       datap->data[datap->length+2] = (val >> 8) & 0xff;
-       datap->data[datap->length+3] = val & 0xff;
+       datap->data[datap->length]   = (char) ((val >> 24) & 0xff);
+       datap->data[datap->length+1] = (char) ((val >> 16) & 0xff);
+       datap->data[datap->length+2] = (char) ((val >> 8) & 0xff);
+       datap->data[datap->length+3] = (char) (val & 0xff);
        datap->length += sizeof(krb5_ui_4);
        retval = 0;
     }
index ca35be55f1a89d53e6726e11aa751d4bb28709da..fc2db17419387a71575a993b34e29409dca18a10 100644 (file)
@@ -53,10 +53,10 @@ kadm_copyout_int32(outint, cp)
     krb5_int32 outint;
     char       *cp;
 {
-    cp[0] = (outint >> 24) & 0xff;
-    cp[1] = (outint >> 16) & 0xff;
-    cp[2] = (outint >> 8) & 0xff;
-    cp[3] = outint & 0xff;
+    cp[0] = (char) ((outint >> 24) & 0xff);
+    cp[1] = (char) ((outint >> 16) & 0xff);
+    cp[2] = (char) ((outint >> 8) & 0xff);
+    cp[3] = (char) (outint & 0xff);
 }
 \f
 /*
@@ -95,7 +95,7 @@ krb5_send_adm_cmd(kcontext, sock, ctx, nargs, arglist)
     krb5_context       kcontext;       /* Context handle       (In ) */
     krb5_pointer       sock;           /* Socket to write to   (In ) */
     krb5_auth_context  *ctx;           /* Auth context         (In ) */
-    int                        nargs;          /* Number of arguments  (In ) */
+    krb5_int32                 nargs;          /* Number of arguments  (In ) */
     krb5_data          *arglist;       /* Components to write  (In ) */
 {
     int        writebufsize;
@@ -189,7 +189,7 @@ krb5_send_adm_reply(kcontext, sock, ctx, cmd_stat, ncomps, complist)
     krb5_pointer       sock;           /* Socket to write to   (In ) */
     krb5_auth_context  *ctx;           /* Auth context         (In ) */
     krb5_int32         cmd_stat;       /* Command status       (In ) */
-    int                        ncomps;         /* Number of arguments  (In ) */
+    krb5_int32                 ncomps;         /* Number of arguments  (In ) */
     krb5_data          *complist;      /* Components to write  (In ) */
 {
     int        writebufsize;