17c478bd9Sstevel@tonic-gate /* 27c478bd9Sstevel@tonic-gate * lib/krb5/rcache/rc_io.h 37c478bd9Sstevel@tonic-gate * 47c478bd9Sstevel@tonic-gate * This file of the Kerberos V5 software is derived from public-domain code 57c478bd9Sstevel@tonic-gate * contributed by Daniel J. Bernstein, <brnstnd@acf10.nyu.edu>. 67c478bd9Sstevel@tonic-gate * 77c478bd9Sstevel@tonic-gate */ 87c478bd9Sstevel@tonic-gate 97c478bd9Sstevel@tonic-gate /* 107c478bd9Sstevel@tonic-gate * Declarations for the I/O sub-package of the replay cache 117c478bd9Sstevel@tonic-gate */ 127c478bd9Sstevel@tonic-gate 137c478bd9Sstevel@tonic-gate #ifndef KRB5_RC_IO_H 147c478bd9Sstevel@tonic-gate #define KRB5_RC_IO_H 157c478bd9Sstevel@tonic-gate 167c478bd9Sstevel@tonic-gate typedef struct krb5_rc_iostuff 177c478bd9Sstevel@tonic-gate { 187c478bd9Sstevel@tonic-gate int fd; 197c478bd9Sstevel@tonic-gate #ifdef MSDOS_FILESYSTEM 207c478bd9Sstevel@tonic-gate long mark; 217c478bd9Sstevel@tonic-gate #else 22505d05c7Sgtb off_t mark; /* on newer systems, should be pos_t */ 237c478bd9Sstevel@tonic-gate #endif 247c478bd9Sstevel@tonic-gate char *fn; 257c478bd9Sstevel@tonic-gate } 267c478bd9Sstevel@tonic-gate krb5_rc_iostuff; 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gate /* first argument is always iostuff for result file */ 297c478bd9Sstevel@tonic-gate 30*1da57d55SToomas Soome krb5_error_code krb5_rc_io_creat 31505d05c7Sgtb (krb5_context, 327c478bd9Sstevel@tonic-gate krb5_rc_iostuff *, 33505d05c7Sgtb char **); 34*1da57d55SToomas Soome krb5_error_code krb5_rc_io_open 35505d05c7Sgtb (krb5_context, 367c478bd9Sstevel@tonic-gate krb5_rc_iostuff *, 37505d05c7Sgtb char *); 38*1da57d55SToomas Soome krb5_error_code krb5_rc_io_move 39505d05c7Sgtb (krb5_context, 407c478bd9Sstevel@tonic-gate krb5_rc_iostuff *, 41505d05c7Sgtb krb5_rc_iostuff *); 42*1da57d55SToomas Soome krb5_error_code krb5_rc_io_write 43505d05c7Sgtb (krb5_context, 447c478bd9Sstevel@tonic-gate krb5_rc_iostuff *, 457c478bd9Sstevel@tonic-gate krb5_pointer, 46505d05c7Sgtb unsigned int); 47*1da57d55SToomas Soome krb5_error_code krb5_rc_io_read 48505d05c7Sgtb (krb5_context, 497c478bd9Sstevel@tonic-gate krb5_rc_iostuff *, 507c478bd9Sstevel@tonic-gate krb5_pointer, 51505d05c7Sgtb unsigned int); 52*1da57d55SToomas Soome krb5_error_code krb5_rc_io_close 53505d05c7Sgtb (krb5_context, 54505d05c7Sgtb krb5_rc_iostuff *); 55*1da57d55SToomas Soome krb5_error_code krb5_rc_io_destroy 56505d05c7Sgtb (krb5_context, 57505d05c7Sgtb krb5_rc_iostuff *); 58*1da57d55SToomas Soome krb5_error_code krb5_rc_io_mark 59505d05c7Sgtb (krb5_context, 60505d05c7Sgtb krb5_rc_iostuff *); 61*1da57d55SToomas Soome krb5_error_code krb5_rc_io_unmark 62505d05c7Sgtb (krb5_context, 63505d05c7Sgtb krb5_rc_iostuff *); 647c478bd9Sstevel@tonic-gate krb5_error_code krb5_rc_io_sync 65505d05c7Sgtb (krb5_context, 66505d05c7Sgtb krb5_rc_iostuff *); 677c478bd9Sstevel@tonic-gate long krb5_rc_io_size 68505d05c7Sgtb (krb5_context, 69505d05c7Sgtb krb5_rc_iostuff *); 707c478bd9Sstevel@tonic-gate #endif 71