/* * $Source$ * $Header$ */ /* (c) Copyright 1988 by the Massachusetts Institute of Technology. */ /* For copying and distribution information, please see the file */ /* . */ #ifndef lint static char *rcsid_checksum_c = "$Header$"; #endif lint #include #include #include /* * checksum_fd(fd) * returns 24-bit checksum of bytes in file */ int checksum_file(path) char *path; { register int sum; register int ch; register FILE *f; sum = 0; f = fopen(path, "r"); while ((ch = getc(f)) != EOF) { sum = (sum + ch) & ((1<<24)-1); } fclose(f); return(sum); }