/* ** "Practical Algoritms for Programming", Binstock, A.; Rex, J.; ** Addison-Wesley, 1995, pp. 71 */ #include unsigned int ElfHash ( const unsigned char *name ) { unsigned long h = 0, g; char str[32]; while ( *name ) { h = ( h << 4 ) + *name++; if ( g = h & 0xF0000000 ) h ^= g >> 24; h &= ~g; } return h; } main(int argc, char **argv) { unsigned int ui; int i; ui = ElfHash(argv[argc-1]); for(i=31; i>=0; i--) printf("%d",ui & 1<