/[pdpsoft]/nl.nikhef.pdp.fetchcrl/trunk/CHANGES
ViewVC logotype

Annotation of /nl.nikhef.pdp.fetchcrl/trunk/CHANGES

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2433 - (hide annotations) (download)
Mon Sep 26 13:40:54 2011 UTC (10 years, 2 months ago) by davidg
File size: 16037 byte(s)
Settle on 3.0.8 version number for @HASH@ support. Update doc and chencges

1 davidg 1758 ==============================================================================
2     CHANGES to fetch-crl - the Certificate Revocation List retrieval tool
3     ==============================================================================
4     The fetch-crl utility will retrieve certificate revocation lists (CRLs) for
5     a set of installed trust anchors, based on crl_url files or IGTF-style info
6     files. It will install these for use with OpenSSL, NSS or third-party tools.
7    
8 davidg 2433 Changes in 3.0.8-1
9     ----------------------
10     * Trust anchor name inferrence based on retrieved-CRL added as option (at cost
11     of retrieving CRL even if there is no accompanying trust anchor found later)
12     Option is disabled by default, but can be enabled by using @HASH@ in the
13     ca-template name list. (feature request by Rob van der Wal, SARA, NL)
14    
15 davidg 2305 Changes in 3.0.7-1
16     ----------------------
17     * CRL modofication time heuristic inadvertently modified file name templates
18     (solves issue kindly reported by Elan Ruusamae)
19     * Expanded representation of tokenisation characters in strings to work
20     around bug in file(1) (rhbz#699546, works around RedHat Bugzilla 699548)
21    
22 davidg 2233 Changes in 3.0.6-1
23     ----------------------
24     * Response parsing disabled to suppress superfluous warning on unexpected
25     UTF-8 respons when retrieving a CRL (solves RedHat Bugzilla 688902)
26    
27 davidg 2188 Changes in 3.0.5-1
28     ----------------------
29     * CRLs for multiple similarly-named trust anchors might not all be downloaded.
30     This is fixed in this release.
31     * Spurious "restoreLogMode" internal errors are no longer raised
32    
33 davidg 2085 Changes in 3.0.4-1
34     ----------------------
35     * Add support for directory based drop-in configuration in /etc/fetch-crl.d/
36     * Only use cached CRL contents if the nextUpdate time of the cached CRL is
37     still in the future. This will ensure that a new download is attempted
38     each and everytime for CRLs that have already expired.
39    
40 davidg 1924 Changes in 3.0.3-1
41     ----------------------
42     * Clean up of man page format macro PU (reported by Mattias Ellert)
43    
44 davidg 1922 Changes in 3.0.2-1
45     ----------------------
46     * Clean up of man page format macro PU (reported by Mattias Ellert)
47    
48 davidg 1901 Changes in 3.0.1-1
49     ----------------------
50     * hunts through more places to find the latest successful CRL download to
51     set the latest local modification time for a CRL
52     (resolves a comparison error in case output and infodir are unset)
53    
54 davidg 1878 Changes in 3.0.0-0.RC4
55     ----------------------
56     * the config file name has changed to fetch-crl.conf, although a
57     fetch-crl.cnf file will also be used when present
58     * symlinked meta-data files can be ignored with the --nosymlinks option
59     (or nosymlinks in the configuration file). This allows fetch-crl to be
60     used effectively with new-format IGTF distribution before 1.37
61     * infinite loop for non-indexed CA file names fixed
62    
63 davidg 1758 Changes in fetch-crl 3.0
64     ------------------------
65     * fetch-crl 3.0 is a complete re-write, and shares no code with the 1.x and
66     2.x series utility of the same name, although the function and some of
67     the syntax is obviously the same
68    
69     * support for multiple output formats: OpenSSL 1 in dual-hash mode, specific
70     DER and PEM outputs, and NSS databases
71     * support for multiple CRLs for a single CA, allowing more than one CA with
72     the same subject name but different CLRs. Review your client software to see
73     if and how these CRLs are used.
74     * stateful retrieval helps reduce bandwidth usage by caching the CRLs locally
75     and respecting the Cache Control headers sent by the web server hosting the
76     CRL. This can reduce the number of downloads
77     * support for HEAD-only requests when state preservation is used (initially
78     only retrieve HTTP headers, and only if the CRL actually changed to a full
79     download)
80     * support for more CRL retrieval protocols (file:// and ftp://)
81     * ability to try site-local URLs first, before relying on the URLs shipped with
82     the trust anchor. This allows building an explicit local caching (web) server.
83     * ability to specify additional URLs to try in case the URLs shipped with the
84     trust anchor were not responsive. This allows for automatic fall-back to
85     (local or global) mirror services for CRL downloads
86     * warnings and errors can be suppressed on a per-trust anchor basis, to allow
87     silencing for particularly unstable trust anchors
88     * aging tolerance (the delay time before errors are generated in case downloads
89     consistently fail) can be configured on a per-trust anchor basis
90     * parallel downloading for multiple trust anchors
91     * minimized use of temporary files in the file system (now limited to the
92     invocation of OpenSSL only, and only for brief periods of time)
93     * dependencies on wget, lynx and other unix utilities have been removed
94     * explicit web proxy support (using LWP http proxies)
95     * completely re-written in perl, with some (hopefully minimal) dependencies:
96     LWP, Sys::Syslog, POSIX. And Data::Dumper (when debugging is enabled),
97     and IO::Select (if parallel downloads are enabled).
98    
99     Differences with respect to the previous versions
100    
101     * when downloading CRLs via https, the server certificate is not checked,
102     neither for the correct DNS name nor for being issued by a valid CA. Since
103     the CRL in itself is signed, this is not a security vulnerability. If
104     stricter checking is anyway desired, and the Crypt::SSLeay perl module has
105     been installed, set the HTTPS_CA_FILE environment variable before invoking
106     fetch-crl -- but keep in mind that the DNS name verification is limited
107     and will (incorrectly) reject DNS names if these are listed only in the
108     subjectAlternativeName of the server certificate
109     * Existing files with a name that matches a CRL target name are overwritten,
110     even if they did not originally contain CRL data. In v2 this was configurable
111     via the FORCE_OVERWRITE configuration setting. In version 3, files are
112     overwritten by default, and this can no longer be configured.
113     * fetch-crl3 will no longer check CA certificates for consistency or validity
114     by themselves, only retrieved CRLs are verified
115    
116     Downsides of the new version
117    
118     * it requires perl5 to be installed (tested with perl 5.8.0 and higher) with
119     libwww-perl, whereas version 2 only required a traditional Bourne shell
120     * requires a version of OpenSSL (0.9.5a or better) to be installed. Needs
121     OpenSSL 1.0.0 (at least beta5) for dual-hash support.
122     * when using parallel downloads, it can only run on pure-POSIX systems
123     * parallelism in combination with the NSS database output format is not tested
124     * Even when only the NSS database output format has been selected, OpenSSL is
125     still needed for verification and processing
126    
127    
128     ==============================================================================
129    
130     The change log below applies to the 1.x and 2.x series fetch-crl and is
131     included for historical purposes only. Fetch-crl3, with which this
132     changes file is being shipped, is a complete re-write of the utility.
133     Although a lot of backwards compatibility has been preserves, there have
134     been significant changes and the information below should NOT be used
135     to infer any behaviour of fetch-crl3.
136    
137     Fetch-crl 1.x and 2.x were released under the EU DataGrid License.
138    
139     Changes in version EGP 2.8.5
140     ----------------------------
141     (2010.06.03)
142    
143     * fetch-crl was occasionally leaving behind {hash}.r0.XXXXXX.r0 files
144     This has been fixed in this release (patch thanks to Jason Smith, BNL)
145     * man page was not compliant to Debian guidelines, this has been fixed
146     (patch thanks to Mattias Ellert, Uppsala University)
147    
148     Changes in version EGP 2.8.4
149     ----------------------------
150     (2010.04.04)
151    
152     * Fixes error when randomWait is not set [RH Bug 579488]
153    
154     Changes in version EGP 2.8.3
155     ----------------------------
156     (2010.03.28)
157    
158     * Preserve SELinux context for CRL files if SElinux status program exists
159     and selinux is enabled (RH bug 577403)
160     * Fix argument parsing on syslog facility specification (RH bug 577387)
161     * Increase granularity of the RandomWait and allow for 0 in -r option
162    
163     Changes in version EGP 2.8.2
164     ----------------------------
165     (2010.03.03)
166    
167     * Improved support for multiple CRL URLs by downloading until a success
168     is achieved, instead of downloading all of them
169     * Imported randomwait patch from Steve Traylen
170    
171     Changes in version EGP 2.8.1
172     ----------------------------
173     (2010.01.26)
174    
175     * The installed CRL file is re-checked for validity to catch file system
176     errors and local disk corruption. When possible, it will try to restore
177     a backup copy. Failures are not subject to aging tolerance.
178    
179     Changes in version EGP 2.8.0
180     ----------------------------
181     (2009.09.22)
182    
183     * The RPM packaging has been overhauled and is now sufficiently conformant
184     to EPEL and FedoraProject guidelines.
185     * New init scripts and a cron job entry have been added to allow management
186     of fetch-crl via the chkconfig mechanism
187    
188     These changes were contributed by Steve Traylen (CERN, Geneva, CH).
189    
190     Changes in version EGP 2.7.0
191     ----------------------------
192     (2009.01.25)
193    
194     * Warnings and errors are now counted. If there are errors in the download
195     or verification process for one or more CRLs, the exit status will be 1;
196     if there are errors in the local setup or in the script invocation, the
197     exit status will be 2.
198     * The installed CRLs no longer have the textual representation of the CRL,
199     but only the PEM data blob, thus reducing IO and memory requirements.
200     * the CRL aging threshold is now set by default to 24 hours. The previous
201     default was 0. The CRL aging threshold is set in the config file using
202     CRL_AGING_THRESHOLD=<xx>, or with the "-a" command-line argument.
203     * Default network timeouts reduced to 10 seconds (was 30) and retries to 2
204     * Added caching and conditional downloading. When CACHEDIR is set, the
205     original downloads are preserved and wget timestamping mode enabled.
206     When the content did not change, only the timestamp on the installed
207     CRL is updated. If SLOPPYCRLHASHES is set, the has is calculated based
208     on the name of the crl_url file, otherwise it is taken from the CRL itself.
209     - The CACHEDIR must be exclusively writable by the user running fetch-crl
210     - Setting CACHEDIR significantly reduced the bandwidth used by fetch-crl
211     * Added RESETPATHMODE setting in sysconfig. It defines whether or not to
212     set re-set $PATH to "/bin:/usr/bin" before start. The search for OpenSSL
213     may be done based on the old path.
214     yes=always replace; searchopenssl=search for openssl first and then reset;
215     no=keep original path, whatever that me be (may be empty if called from cron)
216     Default="yes". This replaces the hard-coded path in the tool!
217     * Hidden "FORCE_OVERWRITE" option now has a regular name. This is backwards-
218     compatible. Set FORCE_OVERWRITE=yes if you want files overwritten that
219     have a CRL-like name and ought to have CRL content, but currently do not.
220     * Addresses gLite Savannah bugs 28418 and 29559. Bug 27023 is partially
221     addressed. Bug 20062 can be remedied with WGET_OPTS arguments.
222     Addresses OSG ticket 4673.
223    
224     Changes in version EGP 2.6.6
225     ----------------------------
226     (2007.09.16)
227     (version 2.5.5 is invalid and was not publicly released)
228    
229     * Added obscure configuration parameter to allow overwriting of
230     arbitrary data files with a downloaded CRL (on request of
231     CERN, see https://savannah.cern.ch/bugs/index.php?29559)
232    
233     Changes in version EGP 2.6.4
234     ----------------------------
235     (2007.08.15)
236    
237     * Expired CA issuer certificate now gives a warning instead of an error
238     with the full verification result message
239     * additional logfile output target can be selected via the configuration file
240     * CRL aging threshold documented in manual page. Errors will now also be
241     generated in the CRL download failed consistently and the current CRL
242     has already expired
243    
244     Changes in version EGP 2.6.3
245     ----------------------------
246     (2006.11.13)
247    
248     * cron job example: fetch-crl invocation syntax error corrected
249    
250     Changes in version EGP 2.6.2
251     ----------------------------
252     (2006.10.27)
253    
254     * fixed bug: older wget versions do not recognise --no-check-certificate
255    
256     Changes in version EGP 2.6.1
257     ----------------------------
258     (2006.10.25)
259    
260     * fixed local timezone vs UTC error in LastUpdate CRL validation comparison
261     * fixed time comparison is the one-hour LastUpdate/download tolerance
262     (both fixes thanks to Alain Roy)
263     * added support for directory names containing whitespace
264     * added support for syslog reporting (via -f option or SYSLOGFACILITY directive)
265     * SERVERCERTCHECK=no is now the default. It can be reset via the configuration
266     file, or using the "--check-server-certificate" commandline option
267     * the main configuration file location (formerly fixed to be
268     /etc/sysconfig/fetch-crl) can now be set via the variable $FETCH_CRL_SYSCONFIG
269     * logfile format timestamp and tag have been normalised
270    
271     Changes in version EGP 2.6
272     --------------------------
273     (2006.05.20)
274    
275     * if the current local CRL has a lastUpdate time in the future, and the
276     newly downloaded CRL is older that the current one, allow the installation
277     of the newly downloaded CRL and issue a warning.
278     * added non-suppressable warning in case the newly downloaded CRL has a
279     lastUpdate time in the future, but install that CRL anyway (as the local
280     clock might have been wrong).
281    
282     Changes in version EGP 2.5
283     --------------------------
284     (2006.01.16)
285    
286     * added additional configuration arguments and configuration variables
287     to skip the server certificate check in wget
288     (to support https:// URLs where the server is authenticated with
289     a certificate that is not part of it's own trusted domain, such as
290     the KISTI URL)
291    
292     Changes in version EGP 2.4
293     --------------------------
294     (2005.11.15)
295    
296     * for those platforms that support the stat(1) command, and in case the
297     .crl_url file is named after the hash of the crl subject name to download,
298     error eporting for individual download errors can be suppressed for
299     a configurable amount of time as set via the "-a" option (unit: hours).
300    
301     Changes in version EGP 2.3
302     --------------------------
303     (2005.11.05)
304    
305     * do not replace recent CRLs with ones that have an older lastUpdate
306     timestamp (prevents ARP/DNS DoS attacks)
307    
308     Changes in version EGP 2.2
309     --------------------------
310     (2005.10.27)
311    
312     * secure http download by wget recognise the CAs in the trusted directory.
313     solves the issue described in the LCG bug tracking system
314     https://savannah.cern.ch/bugs/index.php?func=detailitem&item_id=12182
315    
316     Changes in version EGP 2.1
317     --------------------------
318     (2005.08.12)
319     * specifically look for the most recent version of OpenSSL. The
320     one in GLOBUS_LOCATION (which used to take precedence in the
321     previous releases) is outdated in many cases and caused
322     troubles on the LCG production systems in validating v2 CRLs
323     * added manual page fetch-crl(8)
324    
325     Changes in version EGP 2.0
326     --------------------------
327     (2005.02.28)
328     * name of the installed script changed to "fetch-crl"
329     * the cronjob script is no longer installed by default, but supplied
330     as an example in the %doc directory
331     * RPM is now relocatable (default install in /usr)
332     * READMA and CHANGES file now inclued in %doc tree
333     * make install now installs
334     * version increased to 2.0
335    
336     Changes in version EGP 1.9
337     --------------------------
338     (2005.02.24)
339     * the content of the final target CRL file is now checked for
340     containing a valid CRL if it already exists. If it does not
341     contain a CRL, an error is displayed and the file left untouched
342     So making the final ".r0" file in ${outdir} a link to something else
343     will not work, preventing an escalation in the final stage.
344    
345     Changes in version EGP 1.8
346     --------------------------
347     (changes from Fabio's version 1.7, 2005.02.24)
348    
349     * All temporary files (the initial CRL download using wget
350     and the PEM-converted version of that file) are now created using
351     mktemp
352     * the RetrieveFileByURL function will not overwrite files that
353     have any data in them
354     * Note that the script can be run by a non-priviledged user, but
355     that the output directory must be made writable by that user
356     in an out-of-band way.
357    
358     EDG version 1.7
359     ---------------
360     Imported with consent of Fabio Hernandez and Steve Traylen from
361     the original EDG repository.
362     The EU DataGrid License applies, see http://www.eu-datagrid.org/

grid.support@nikhef.nl
ViewVC Help
Powered by ViewVC 1.1.28