1*1b108b8bSchristos$File: MAINT,v 1.10 2008/02/05 19:08:11 christos Exp $ 2*1b108b8bSchristos 3*1b108b8bSchristosMaintenance notes: 4*1b108b8bSchristos 5*1b108b8bSchristosI am continuing to maintain the file command. I welcome your help, 6*1b108b8bSchristosbut to make my life easier I'd like to request the following: 7*1b108b8bSchristos 8*1b108b8bSchristos- Do not distribute changed versions. 9*1b108b8bSchristos 10*1b108b8bSchristosPeople trying to be helpful occasionally put up their hacked versions 11*1b108b8bSchristosof the file command for anonymous FTP, and people all over the 12*1b108b8bSchristosworld get copies of the hacked versions. Within a day or two I am 13*1b108b8bSchristosgetting email from around the world asking me why "my" file command 14*1b108b8bSchristoswon't compile!!! Needless to say this detracts from the limited 15*1b108b8bSchristostime I have available to work on the actual software. Therefore I 16*1b108b8bSchristosask you again to please NOT distribute your changed version. If 17*1b108b8bSchristosyou need to make changes, please add a patch file next to the 18*1b108b8bSchristosdistribution tar, and a README file that clearly explains what you 19*1b108b8bSchristosare trying to fix. 20*1b108b8bSchristos 21*1b108b8bSchristosThank you for your assistance and cooperation. 22*1b108b8bSchristos 23*1b108b8bSchristosCode Overview 24*1b108b8bSchristos 25*1b108b8bSchristosThis is a rough idea of the control flow from the main program: 26*1b108b8bSchristos 27*1b108b8bSchristosfile.c main() 28*1b108b8bSchristosfile.c process (called for each file) 29*1b108b8bSchristos printf file name 30*1b108b8bSchristosmagic.c magic_file() 31*1b108b8bSchristosfsmagic.c file_fsmagic() 32*1b108b8bSchristos (handles statbuf modes for DEV) 33*1b108b8bSchristos (handles statbuf modes for executable &c. 34*1b108b8bSchristos reads data from file. 35*1b108b8bSchristosfuncs.c: file_buffer() 36*1b108b8bSchristoscompress.c file_zmagic() 37*1b108b8bSchristosis_tar.c file_is_tar() 38*1b108b8bSchristossoftmagic.c file_softmagic() 39*1b108b8bSchristos match() - looks for match against main magic database 40*1b108b8bSchristosascmagic.c file_ascmagic() 41*1b108b8bSchristosreadelf.c file_tryelf() 42*1b108b8bSchristos "unknown" 43*1b108b8bSchristos 44*1b108b8bSchristosChristos Zoulas (see README for email address) 45