/*--------------------------------------------------------------------*/ /* s t a t e r . c */ /* */ /* File time and size routines */ /* */ /* Copyright (c) 1991, Andrew H. Derbyshire */ /*--------------------------------------------------------------------*/ /*--------------------------------------------------------------------*/ /* Standard library include files */ /*--------------------------------------------------------------------*/ #include #include #include #include #include /*--------------------------------------------------------------------*/ /* UUPC/extended include files */ /*--------------------------------------------------------------------*/ #include "lib.h" /*--------------------------------------------------------------------*/ /* Define current file name */ /*--------------------------------------------------------------------*/ currentfile(); /*--------------------------------------------------------------------*/ /* s t a t e r */ /* */ /* Report date and size of a file */ /*--------------------------------------------------------------------*/ time_t stater(const char *file, long *size) { struct stat statbuf; /*--------------------------------------------------------------------*/ /* If the file doesn't exist, give a nasty message to the caller */ /*--------------------------------------------------------------------*/ if(stat((char *) file, &statbuf) < 0 ) { printmsg(0,"cannot stat %s",file); printerr( file ); if ( size != NULL ) *size = 0; return -1; /* Flag file as missing */ } /*--------------------------------------------------------------------*/ /* We have the information; return it to the caller */ /*--------------------------------------------------------------------*/ if ( size != NULL ) *size = statbuf.st_size; printmsg(5,"stater: \"%s\" is %ld bytes; updated %s", file, *size, ctime( &statbuf.st_ctime)); return(statbuf.st_ctime); } /* stater */