PS:
And, for bonus points, to correctly support your sub-directory feature in your sample script, you would do that with the -P parameter, e.g.: wget http://www.sortmonster.net/Sniffer/Updates/%LICENSE_ID%.snf -N -P %RULEBASE_PATH% --header=Accept-Encoding:gzip --http-user=sniffer --http-passwd=ki11sp8m From: Andy Schmidt [mailto:[EMAIL PROTECTED] Sent: Wednesday, October 08, 2008 12:41 AM To: 'Message Sniffer Community' Subject: Update Script - Choice of WGET Parameter Prevents TimeStamping Hi, I've spent some time over the last few days trying to integrate the "new" sniffer update scheme into my current scripts and kept hitting a wall because the update script was downloading the rulebase file with the CURRENT date/time instead of your webserver's date/time. In the past I had used CURL instead of WGET, but I'm trying to stick with the provided samples, the best I can (to make future upgrades easier). I finally figured out why the downloaded files were timestamped incorrectly (and why the "conditional" download that I had working with CURL was not working with WGET. The reason was your choice of WGET parameters in your sample. You currently are using: wget http://www.sortmonster.net/Sniffer/Updates/(licensecode).snf -S -O (licensecode).snf --header=Accept-Encoding:gzip --http-user=sniffer --http-passwd=ki11sp8m However, the -O parameter is not an "output file" parameter, but rather an OVERRIDE parameter intended for cases where MORE than one file is downloaded from the server. The '-O' parameter allows you to combine ALL these downloaded files into a SINGLE file. Since all files are combined into one large file, the file date is simply set to the current time. Clearly, this entire scenario does NOT apply to the rulebase download! Worse, this overrides the normal handling of downloads, where the output filename is controlled by the server AND the timestamp of the local file would be set to the "Last-Modified" header of your web server. The effect is, that the downloaded files have the "wrong" timestamp and thus will prevent employing a "conditional" download scheme in cases where the local file already exists with the correct size and timestamp. The "normal" command (and the one intended for YOUR application) would be: wget http://www.sortmonster.net/Sniffer/Updates/(licensecode).snf -S -N --header=Accept-Encoding:gzip --http-user=sniffer --http-passwd=ki11sp8m This will: a) Download the file, maintain the filename and (by omitting the -O) inherit the original timestamp from the web server -as it should be. b) The -N parameter will further improve the situation. If the local file already exists with the correct file size and time stamp, then an unnecessary download will be skipped! Again, I know, that you are only providing your script as a "sample" - but, the closer your sample tracks "reality" the fewer customers will see a need to adapt it and thus reducing YOUR tech support effort if the customer modifications lead to errors. Best Regards Andy Schmidt Phone: +1 201 934-3414 x20 (Business) Fax: +1 201 934-9206