Annotation of 43BSDReno/kerberosIV/man/tf_util.3, revision 1.1.1.1

1.1       root        1: .\" $Source: /usr/src/kerberosIV/man/RCS/tf_util.3,v $
                      2: .\" $Author: kfall $
                      3: .\" $Header: /usr/src/kerberosIV/man/RCS/tf_util.3,v 4.3 90/06/25 21:12:43 kfall Exp $
                      4: .\" Copyright 1989 by the Massachusetts Institute of Technology.
                      5: .\"
                      6: .\" For copying and distribution information,
                      7: .\" please see the file <mit-copyright.h>.
                      8: .\"
                      9: .TH TF_UTIL 3 "Kerberos Version 4.0" "MIT Project Athena"
                     10: .SH NAME
                     11: tf_init, tf_get_pname, tf_get_pinst, tf_get_cred, tf_close \
                     12: \- Routines for manipulating a Kerberos ticket file
                     13: .SH SYNOPSIS
                     14: .nf
                     15: .nj
                     16: .ft B
                     17: #include <kerberosIV/krb.h>
                     18: .PP
                     19: .ft B
                     20: extern char *krb_err_txt[];
                     21: .PP
                     22: .ft B
                     23: tf_init(tf_name, rw)
                     24: char *tf_name;
                     25: int rw;
                     26: .PP
                     27: .ft B
                     28: tf_get_pname(pname)
                     29: char *pname;
                     30: .PP
                     31: .ft B
                     32: tf_get_pinst(pinst)
                     33: char *pinst;
                     34: .PP
                     35: .ft B
                     36: tf_get_cred(c)
                     37: CREDENTIALS *c;
                     38: .PP
                     39: .ft B
                     40: tf_close()
                     41: .PP
                     42: .fi
                     43: .SH DESCRIPTION
                     44: This group of routines are provided to manipulate the Kerberos tickets
                     45: file.  A ticket file has the following format:
                     46: .nf
                     47: .in +4
                     48: .sp
                     49: principal's name          (null-terminated string)
                     50: principal's instance      (null-terminated string)
                     51: CREDENTIAL_1
                     52: CREDENTIAL_2
                     53:   ...
                     54: CREDENTIAL_n
                     55: EOF
                     56: .sp
                     57: .in -4
                     58: .LP
                     59: Where "CREDENTIAL_x" consists of the following fixed-length
                     60: fields from the CREDENTIALS structure (defined in <kerberosIV/krb.h>):
                     61: .nf
                     62: .sp
                     63: .in +4
                     64:        char            service[ANAME_SZ]
                     65:        char            instance[INST_SZ]
                     66:        char            realm[REALM_SZ]
                     67:        des_cblock      session
                     68:        int             lifetime
                     69:        int             kvno
                     70:        KTEXT_ST        ticket_st
                     71:        long            issue_date
                     72: .in -4
                     73: .sp
                     74: .fi
                     75: .PP
                     76: .I tf_init
                     77: must be called before the other ticket file
                     78: routines.
                     79: It takes the name of the ticket file to use,
                     80: and a read/write flag as arguments.
                     81: It tries to open the ticket file, checks the mode and if
                     82: everything is okay, locks the file.  If it's opened for
                     83: reading, the lock is shared.  If it's opened for writing,
                     84: the lock is exclusive.
                     85: KSUCCESS is returned if all went well, otherwise one of the
                     86: following:
                     87: .nf
                     88: .sp
                     89: NO_TKT_FIL     - file wasn't there
                     90: TKT_FIL_ACC    - file was in wrong mode, etc.
                     91: TKT_FIL_LCK    - couldn't lock the file, even after a retry
                     92: .sp
                     93: .fi
                     94: .PP
                     95: The
                     96: .I tf_get_pname
                     97: reads the principal's name from a ticket file.
                     98: It should only be called after tf_init has been called.  The
                     99: principal's name is filled into the 
                    100: .I pname
                    101: parameter.  If all goes
                    102: well, KSUCCESS is returned.
                    103: If tf_init wasn't called, TKT_FIL_INI
                    104: is returned.
                    105: If the principal's name was null, or EOF was encountered, or the
                    106: name was longer than ANAME_SZ, TKT_FIL_FMT is returned.
                    107: .PP
                    108: The
                    109: .I tf_get_pinst
                    110: reads the principal's instance from a ticket file.
                    111: It should only be called after tf_init and tf_get_pname
                    112: have been called.
                    113: The principal's instance is filled into the 
                    114: .I pinst
                    115: parameter.
                    116: If all goes
                    117: well, KSUCCESS is returned.
                    118: If tf_init wasn't called, TKT_FIL_INI
                    119: is returned.
                    120: If EOF was encountered, or the
                    121: name was longer than INST_SZ, TKT_FIL_FMT is returned.
                    122: Note that, unlike the principal name, the instance name may be null.
                    123: .PP
                    124: The
                    125: .I tf_get_cred
                    126: routine reads a CREDENTIALS record from a ticket file and
                    127: fills in the given structure.
                    128: It should only be called after
                    129: tf_init, tf_get_pname, and tf_get_pinst have been called.
                    130: If all goes well, KSUCCESS is returned.  Possible error codes
                    131: are:
                    132: .nf
                    133: .sp
                    134: TKT_FIL_INI    - tf_init wasn't called first
                    135: TKT_FIL_FMT    - bad format
                    136: EOF            - end of file encountered
                    137: .sp
                    138: .fi
                    139: .PP
                    140: .I tf_close
                    141: closes the ticket file and releases the lock on it.
                    142: .SH "SEE ALSO"
                    143: krb(3)
                    144: .SH DIAGNOSTICS
                    145: .SH BUGS
                    146: The ticket file routines have to be called in a certain order.
                    147: .SH AUTHORS
                    148: Jennifer Steiner, MIT Project Athena
                    149: .br
                    150: Bill Bryant, MIT Project Athena
                    151: .SH RESTRICTIONS
                    152: Copyright 1987 Massachusetts Institute of Technology

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.