[651] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

Compile Problem with Kerberos 5.4.2

daemon@ATHENA.MIT.EDU (Doug Engert)
Wed Aug 17 14:55:05 1994

Date: Wed, 17 Aug 94 13:54:44 CDT
From: "Doug Engert" <DEEngert@anl.gov>
To: <krb5-bugs@MIT.EDU>
Cc: <auth-pilot@es.net>

The routines krb5_encode.h and krb5_encode.c use the ANSI "const"
in the declare for the functions encode_krb5_as_req, encode_krb5_as_rep,
encode_krb5_tgs_req and encode_krb5_tgs_rep, yet in each of these
there is a rep->msgtype = KRB5... statement. This causes a
compiler error when using the SunOS ANSI compiler.

(This problem was reported to me by Joe Ramus <ramus@nersc.gov>
who is working on the same project as myself.)

>> Here are the changes I made to correct the "const" problem in K5.4.2
>> that we discussed earlier.

>> Doug:  I assume you will update your source files.
>>   Since you have the source files, I think it would be best for
>>   you to report fixes to MIT.

>>  Joe

           Douglas E. Engert
           Systems Programming
           Argonne National Laboratory
           9700 South Cass Avenue
           Argonne, Illinois  60439
           (708) 252-5444

           Internet: DEEngert@anl.gov
---------------------------------------------------------------------

*** /krb5.4.2/build/src/lib/krb5/asn.1/krb5_encode.h   Fri Aug 12 18:30:34 1994
--- /krb5.4.2/build/sun4/lib/krb5/asn.1/krb5_encode.h  Wed Aug 17 10:30:45 1994
***************
*** 52,62 ****

  /* yes, the translation is identical to that used for KDC__REP */
  krb5_error_code encode_krb5_as_rep
!  PROTOTYPE((const krb5_kdc_rep *rep, krb5_data **code));

  /* yes, the translation is identical to that used for KDC__REP */
  krb5_error_code encode_krb5_tgs_rep
!  PROTOTYPE((const krb5_kdc_rep *rep, krb5_data **code));

  krb5_error_code encode_krb5_ap_req
   PROTOTYPE((const krb5_ap_req *rep, krb5_data **code));
--- 52,62 ----

  /* yes, the translation is identical to that used for KDC__REP */
  krb5_error_code encode_krb5_as_rep
!  PROTOTYPE(( krb5_kdc_rep *rep, krb5_data **code));

  /* yes, the translation is identical to that used for KDC__REP */
  krb5_error_code encode_krb5_tgs_rep
!  PROTOTYPE(( krb5_kdc_rep *rep, krb5_data **code));

  krb5_error_code encode_krb5_ap_req
   PROTOTYPE((const krb5_ap_req *rep, krb5_data **code));
***************
*** 68,77 ****
   PROTOTYPE((const krb5_ap_rep_enc_part *rep, krb5_data **code));

  krb5_error_code encode_krb5_as_req
!  PROTOTYPE((const krb5_kdc_req *rep, krb5_data **code));

  krb5_error_code encode_krb5_tgs_req
!  PROTOTYPE((const krb5_kdc_req *rep, krb5_data **code));

  krb5_error_code encode_krb5_kdc_req_body
   PROTOTYPE((const krb5_kdc_req *rep, krb5_data **code));
--- 68,77 ----
   PROTOTYPE((const krb5_ap_rep_enc_part *rep, krb5_data **code));

  krb5_error_code encode_krb5_as_req
!  PROTOTYPE(( krb5_kdc_req *rep, krb5_data **code));

  krb5_error_code encode_krb5_tgs_req
!  PROTOTYPE(( krb5_kdc_req *rep, krb5_data **code));

  krb5_error_code encode_krb5_kdc_req_body
   PROTOTYPE((const krb5_kdc_req *rep, krb5_data **code));



*** /krb5.4.2/build/src/lib/krb5/asn.1/krb5_encode.c   Fri Aug 12 18:30:34 1994
--- /krb5.4.2/build/sun4/lib/krb5/asn.1/krb5_encode.c  Wed Aug 17 10:21:00 1994
***************
*** 326,334 ****
  }

  /* yes, the translation is identical to that used for KDC__REP */
! krb5_error_code encode_krb5_as_rep(DECLARG(const krb5_kdc_rep *, rep),
                  DECLARG(krb5_data **, code))
!      OLDDECLARG(const krb5_kdc_rep *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
--- 326,334 ----
  }

  /* yes, the translation is identical to that used for KDC__REP */
! krb5_error_code encode_krb5_as_rep(DECLARG(krb5_kdc_rep *, rep),
                  DECLARG(krb5_data **, code))
!      OLDDECLARG(krb5_kdc_rep *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
***************
*** 352,360 ****
  }

  /* yes, the translation is identical to that used for KDC__REP */
! krb5_error_code encode_krb5_tgs_rep(DECLARG(const krb5_kdc_rep *, rep),
                   DECLARG(krb5_data **, code))
!      OLDDECLARG(const krb5_kdc_rep *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
--- 352,360 ----
  }

  /* yes, the translation is identical to that used for KDC__REP */
! krb5_error_code encode_krb5_tgs_rep(DECLARG(krb5_kdc_rep *, rep),
                   DECLARG(krb5_data **, code))
!      OLDDECLARG(krb5_kdc_rep *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
***************
*** 453,461 ****
    krb5_cleanup();
  }

! krb5_error_code encode_krb5_as_req(DECLARG(const krb5_kdc_req *, rep),
                  DECLARG(krb5_data **, code))
!      OLDDECLARG(const krb5_kdc_req *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
--- 453,461 ----
    krb5_cleanup();
  }

! krb5_error_code encode_krb5_as_req(DECLARG(krb5_kdc_req *, rep),
                  DECLARG(krb5_data **, code))
!      OLDDECLARG(krb5_kdc_req *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
***************
*** 473,481 ****
    krb5_cleanup();
  }

! krb5_error_code encode_krb5_tgs_req(DECLARG(const krb5_kdc_req *, rep),
                   DECLARG(krb5_data **, code))
!      OLDDECLARG(const krb5_kdc_req *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
--- 473,481 ----
    krb5_cleanup();
  }

! krb5_error_code encode_krb5_tgs_req(DECLARG(krb5_kdc_req *, rep),
                   DECLARG(krb5_data **, code))
!      OLDDECLARG(krb5_kdc_req *, rep)
       OLDDECLARG(krb5_data **, code)
  {
    krb5_setup();
    Changes in krb5_encode.h & krb5_encode.c                                X

home help back first fref pref prev next nref lref last post