-
Notifications
You must be signed in to change notification settings - Fork 149
/
ReleaseNotes.txt
2075 lines (1889 loc) · 102 KB
/
ReleaseNotes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
======
XRootD
======
Release Notes
=============
--------------
Version 4.10.1
--------------
+ **Major bug fixes**
* **[XrdCl]** Make TPC check bogus-response proof.
--------------
Version 4.10.0
--------------
+ **New Features**
* **[POSIX]** Add methods to the cache mngt objecT to get status of a
cached file.
* **[Server]** Add xrd.network dyndns option for dynamic DNS handling.
* **[Server]** Properly handle dynamic DNS environments.
* **[Server]** Add evict option to the prepare request.
* **[Server]** Allow better handling for proxy caching clusters.
* **[Server]** Allow configurable posc sync level.
* **[Server]** Implement framework for a kXR_prepare plug-in.
* **[XrdCl]** Implement streaming dirls, closes #225
* **[XrdCl]** Retry policy changes: see details in #950.
* **[XrdCl]** Add switch/flag to enforce zip archive listing.
* **[XrdCl]** Preserve tried/triedrc cgi info on redirect for kXR_locate
request, #closes #944
* **[XrdCl]** Implement prepare evict and expose in xrdfs.
* **[XrdCl]** Expose prepare abort and query prepare.
* **[XrdCl]** Add tpc.scgi if delegation is being used.
* **[Python]** Expose chunked dirlist API in Python.
* **[Python]** Support globbing.
* **[XrdClHttp]** Add XrdClHttp submodule.
* **[XCache]** Implement write-queue number of blocks / threads config
options. (#963)
* **[CMake]** Add switch for XrdCl builds only.
+ **Major bug fixes**
* **[XrdCl]** Allow to cancel classical copy jobs.
* **[XrdCl]** Fix race condition in error recovery.
* **[XrdCl]** Prevent race condition between Request T/O and socket read.
* **[XCache]** Check for errors during XrdOssFile::FSync - do not write
cinfo file if it fails.
* **[XCache]** Deny write access to a file in initial Prepare() call,
fixes #663
* **[XCache]** Review and correct error handling in POSIX and XCache,
implement XCache::Unlink()
* **[XrdTpc]** Always query dual stack for HTTP TPC.
* **[XrdTpc]** Do not include authz header in the filename.
* **[XrdTpc]** Add curl handle cleanup on redirections or errors.
* **[XrdHttp]** Include provided opaque information in the redirection.
* **[XrdHttp]** Fix digest names returned to clients.
* **[XrdHttp]** Fix opaque info handling on redirections.
* **[XrdMacaroon]** Fix macaroon authorization config.
* **[XrdSecgsi]** Make proxy cache path aware.
* **[XrdSecgsi]** XrdSecProtocolgsi::Encrypt - set IV correctly and report
correct size.
+ **Minor bug fixes**
* **[XrdCl]** Use DirList with Locate and Merge flag in xrdcp
* **[XrdCl]** Index substreams with right index.
* **[XrdCl]** Make sure there is no race condition while loading sec
protocol.
* **[CMake]** Enable by default rpaths on MacOSX.
* **[Server]** Use correct directory path creation flag in kXR_open
(compatible).
* **[Server]** Require localroot to exist and be a directory for default N2N.
* **[Server]** Avoid SEGV when given an empty directory continuation.
* **[SSI]** Close loophole between internal "provision" and Finished()
calls.
* **[POSIX]** Correct pfn to lfn translation for the simple case.
* **[FRM]** Ignore the space assignment directive.
* **[XCache]** Cache::LocalFilePath() only try to fill output pfn buffer if
it is non-null.
* **[Python]** Make sure pip install fails if install script fails.
* **[Python]** Check dependencies on pip install, if some are missing list
them and raise an exception.
+ **Miscellaneous**
* **[XrdCl]** Enhance redirect back-trace output.
* **[Python]** Respect pip python version when installing xrootd, fixes #955.
* **[Python]** Respect pip --user switch, fixes #952
* **[CMSD]** Allow redirect when limit exceeded in sched directive.
* **[Packaging]** Add support for Ubuntu disco.
* **[Packaging]** Discontinue support for Ubuntu artful.
* **[XrdCeph]** Replace XrdCeph source code with a submodule.
* **[XCache]** More reasonable defaults for pfc.writequeue parameters.
* **[CMake]** Declare CMake options, fixes #995
* **[CMake]** Set -Werror for debug and CI builds only.
-------------
Version 4.9.1
-------------
+ **Major bug fixes**
* **[POSIX]** Fix VMP issues with POSIX preload library causing SEGV.
* **[POSIX]** Additional hardening of POSIX functions for Xcache.
* **[XrdCl]** Make sure local destination path is not scrambled,
fixes #925
* **[XrdCl]** Fix memory leak in AsyncSocketHandler.
* **[XrdCl]** Fix recursive copy.
* **[XrdCl]** Make sure released SID is valid object.
* **[XrdCl]** Correctly calculate the offset of the last file in ZIP64.
* **[Server]** Liberalize character set allowed in login name (fixes
EOS issue).
* **[Server]** Save the proper ReqID for async responses on close.
* **[Server]** Handle waitresp sequencing to avoid early bridge
termination.
* **[XrdHttp]** Only consider running plugins for new requests.
* **[XrdHttp]** Handle clients that request multiple checksums.
* **[XrdHttp]** Do not accept more data than specified in the HTTP
request.
* **[XrdHttp]** Fix high memory usage caused by cached XrdHttpProtocol
objects.
* **[XrdSecgsi]** Fine tune message bucket content.
* **[XrdSecgsi]** Make sure options for proxy saving to file are honored.
* **[XrdSecgsi]** add missing entries in gsiClientStesp and gsiServerSteps.
* **[Python]** Ensure Python module doesn't deadlock/segv on exit,
fixes #330
* **[XrdMacaroon]** Create macaroon with proper caveats and path.
* **[Proxy]** Improve handling of failures during opening of local data
and cinfo files.
* **[Proxy]** Fix memory leak - block was not freed when writing to
disk failed.
* **[XrdTpc]** Only use Curl's low-speed-limit with libcurl v7.38
and later.
+ **Minor bug fixes**
* **[Server]** Fix bridge waitResp issues to allow merge of pull #902.
* **[Server]** Further simplify tracing, especially for var persistece.
* **[Server]** Fix strlcpy for Group null-string in XrdOfsTPC.
* **[XrdMacaroon]** Log user caveats with macaroon generation.
* **[XrdMacaroon]** Allow admin to customize default macaroons authz.
* **[XrdMacaroon]** Set the macaroons.onmissing default.
* **[XrdMacaroon]** Interact with json-c appropriately for request.
* **[XrdMacaroon]** Ensure we delete macaroon object after use.
* **[XrdHttp]** XrdHttp does not support chunked encoding; respond
appropriately.
* **[POSIX]** Fix string scoping issues in debug messages.
* **[XrdSecgsi]** Downgrade error msg from key file issues to DEBUG.
* **[XrdSecgsi]** Improve buffer content dumps for debugging purposes.
* **[XrdCl]** Use correct flag to remove handler in inqueue.
* **[XrdCl]** Log properly kXR_waitresp, closes #852
* **[XrdCl]** Fail ZIP extraction if file is compressed.
* **[XrdHttp]** Don't assume that a header "Depth: 1" means that the
resource is a directory.
* **[Python]** Expose parallel copy jobs in python bindings.
* **[Python]** Expose multi-source download in python.
+ **Miscellaneous**
* **[XrdHttp]** Add support for chunked encoding in uploads.
* **[XrdHttp]** Implement RFC 3230 digests for GET requests.
* **[Packaging]** Add xrootd-fuse deb package, closes #831
* **[XrdCl]** Add more descriptive error message on XrdCl::CopyProcess:run,
closes #849
* **[XrdCl]** Add special logs for future debugging of BNL problem.
-------------
Version 4.9.0
-------------
+ **New Features**
* **[XrdCl]** Provide operation pipelining API.
* **[XrdCl]** Redirect traceback dump.
* **[XrdCl]** Allow specifying plug-ins on protocol level
* **[XrdCl]** Pass # streams to TPC destination.
* **[XrdCl]** Enable proxy delegation.
* **[XrdCl]** Enable state redirection for local files.
* **[XrdCl]** Add an API to close connection.
* **[XrdCl/Server]** Implement TPC-Lite for delegated TPC copy.
* **[XrdCl/Server]** Implement kXR_writev operation.
* **[Server]** Allow tpc requests at destination endpoint to be redirected.
* **[Server]** Add &I=<iptype> to 'u' login monitoring record.
* **[Server]** Allow spaces in id's via acc.spacechar.
* **[Server]** Allow space preassignment of file creation paths.
* **[Server]** Identify type of IP connection in monitoring (&I=4|6 in
'u' record).
* **[Server]** Enable use of delegated credentials for 3rd party copy.
* **[Server]** Allow callbacks for close() and opague() requests.
* **[Server]** Allow the CKS manager to run on the redirector.
* **[Server]** Allow config continuation to files in a directory.
* **[Server]** Add 'query confg start' to find server start time.
* **[SSI]** Add ability to spread requests to increase parallism.
* **[SSI]** Add monitoring capabilities to SSI.
* **[SSI]** Properly handle Finished() calls prior to response posting.
* **[XrdSsi]** Provide summary monitoring information to report stream.
* **[TPC]** Allow number of streams to use to be passed to the server.
* **[TPC]** Support Http TPC.
* **[XrdHttp]** Added XrdHttp cipherlist filter string config option.
* **[XrdHttp]** Map Xrd error codes to HTTP status codes
* **[XrdHttp]** Add plumbing necessary for RFC3230 digest requests.
* **[XrdSecgsi]** Use hostname, not reverse DNS, for address comparison.
* **[XrdSecgsi]** Allow XrdSecGSITrustDNS setting to disable use of all
DNS lookups.
* **[XrdSecgsi]** Add option to save delegated proxies as credentials.
* **[XrdSecgsi]** Improved checking of CA expiration.
* **[XrdSecgsi]** Review proxy delegation mechanism.
* **[XrdSecgsi]** Support signing of server DH public parameters.
* **[XrdCrypto]** Allow XRootD client to accept subjectAltNames.
* **[XrdMacaroons]** Macaroons plugin for XRootD.
* **[Proxy]** Implement new options in pfc.diskusage for better control
of purging.
* **[Proxy]** Support origins that only talk http.
* **[Proxy]** Add 'pss.tid' CGI element to all outgoing URL's.
* **[Proxy]** Implement new options in pfc.diskusage for better control of purging.
* **[POSIX]** Implement Cache Context Management plugin.
* **[XrdApps]** Implement xrdqstats command to display summary monitoring.
+ **Major bug fixes**
* **[XrdCl]** Handle properly seerver disconnect.
* **[XrdCl]** apply TPC timeout to the 2nd sync, fixes #800
* **[XrdCl]** Parse correctly CDFH ZIP64 extension.
* **[XrdCl]** Correct ownership of virtual redirect msg.
* **[SSI]** Do not leak memory when a fatal error occurs. Fixes #775
* **[SSI]** Avoid race condition between Finish() and SetResponse().
* **[Server]** Avoid SEGV when the close operation fails.
* **[Server]** Fix SEGV when using delegation and VOMSFUN with raw creds.
* **[POSIX]** Avoid SEGV due to race condition between open() and close().
* **[POSIX]** Correct regression that broke POSIX preload.
* **[Proxy]** Support multiple IO objects working with the same file.
* **[Proxy]** Fix incorrect rc check when processing Fstat() (disabled progbar).
+ **Minor bug fixes**
* **[Server]** Follow protocol spec when returning file compression info.
* **[Server]** Fix checksumming on filesystems that don't support fattr.
* **[XrdOfs]** Prevent double-parsing of parameters for ofs.ckslib.
* **[XrdCl]** Correctly set path in case of state redirect.
* **[XrdCl]** Correct handling of --infiles option. Fixes #779
* **[XrdCl]** Don't read past buffer when parsing protocol response.
* **[XrdHttp]** Fix error codes in the case of PUT and MKDIR.
* **[XrdHttp]** Support mv for files with spaces.
* **[XrdHttp]** Return correct content-range header.
* **[Secsss]** Pass correct parameters when registering an ID. Fixes #689
+ **Miscellaneous**
* **[XrdCl]** Delete channel on TTL.
* **[Server]** Do not allow badly formed CGI to pollute subsequent tokens.
* **[TPC]** Do not take case into account for hostname matching.
* **[TPC]** Allow source protocol to be transmitted to server via tpc.spr CGI.
* **[TPC]** Set envars XRD_TRACEID, XRDTPC_SPROT, and XRDTPC_TPROT
* **[Proxy]** Avoid auth failure due to URL cgi directives.
* **[Proxy]** Add method to cache to get local file path of cached file.
* **[Proxy]** Fix wrong logic in cache purge algorithm.
* **[Proxy]** Resolve conflicts in URL rewriting.
* **[POSIX]** Avoid unnecessary cache open requests.
* **[XrdCrypto]** Replace C-style string manipulation with C++ equivalent.
* **[Secgsi]** Implement stricter version of RFC2818 (host name check) for
client.
* **[Secgsi]** Enable use of an unique IV in enc/dec cipher operations.
* **[XrdHttp]** Break XrdHttp into a module and a utility library.
* **[XrdHttp]** Expose query string in external req handler.
* **[XrdThrottle]** Update the throttle plugin to propogate underlying
errors.
* **[XrdThrottle]** Improve chaining behavior of throttle plugin.
* **[RPM]** Use OPENSSL_NO_FILENAMES flag.
* **[Docs]** Update Doxyfile, closes #743
* **[All]** Place protocol definition under a modified BSD license.
* **[All]** FreeBSD compatibility patch.
-------------
Version 4.8.6
-------------
+ **Major bug fixes**
* **[XrdCl]** Make sure released SID is valid object.
* **[XrdCl]** Handle properly server disconnect.
-------------
Version 4.8.5
-------------
+ **Major bug fixes**
* **[XrdCrypto]** add protection against missing extension.
* **[XrdCl]** Ensure DeepLocate counter doesn't overflow, fixes #758
* **[XrdCl]** Fix recursive copy, fixes #792
* **[XrdCl]** Correctly classify errno while reading/writing to
a socket.
* **[XrdCl]** Fix local checksum double I/O problem.
* **[XrdHttp]** Fix callback of protocol plugin after bridge delay.
* **[XrdHttp]** Obey the `Connection` request header.
* **[XrdHttp]** Reset filesize when the XrdHttpReq object is used.
* **[XrdHttp]** Do not increment reqstate when headers are incomplete.
* **[Proxy]** Fix incorrect rc check when processing Fstat().
+ **Minor bug fixes**
* **[XrdCl]** xrdfs ls: fix formatting issue,fixes #823
* **[XrdCl]** If stream is broken delete the in-message.
* **[XrdCrypto]** fix signatures of Export methods.
+ **Miscellaneous**
* **[XrdCl]** Expose kXR_cancel flag in FileSystem::Prepare, closes #699
* **[XrdCl]** Specify file for extraction from ZIP archive also
through opaque info.
* **[XrdCl]** Document xrdcp/xrdfs return codes, closes #628
* **[XrdCl]** Explicitly log request retries, closes #690
* **[XrdCl]** Remove redundant stat from ZIP open sequence.
* **[XrdCl/XrdSec]** Add CGI to specify 'sss' keytab.
* **[XrdSecsss]** Add possiblity to inject an endorsement string into an
SSS SecEntity object.
-------------
Version 4.8.4
-------------
+ **Major bug fixes**
* **[XrdCrypto]** Use consistently time_t.
* **[XrdCl]** Treat empty redirect response as error.
+ **Minor bug fixes**
* **[XrdCl]** Use NEED2SECURE macro properly.
+ **Miscellaneous**
* **[XrdSecgsi]** Improving checking of CA expiration.
* **[XrdCl]** Improve TPC key generation, fixes #662
-------------
Version 4.8.3
-------------
+ **Major bug fixes**
* **[XrdCl]** Release SIDs on PostMaster::Send() failure.
-------------
Version 4.8.2
-------------
+ **Major bug fixes**
* **[Proxy]** Make sure to use N2N even when only localroot specified,
fixes #650.
* **[Proxy]** Fully support third party copy in proxy servers.
* **[Server]** Correct faulty logic for sendq backlog warning message.
* **[XrdCl]** Correctly handler error/wait response to endsess request.
* **[XrdCl]** MsgHandler must not be enqueued in InQueue on virtual
redirect, fixes #682
* **[XrdCl]** Add ZIP64 support, fixes #402
* **[XrdHttp]** Always have OpenSSL read/write data through the XrdLink
object.
+ **Minor bug fixes**
* **[Net]** Optimize formatting corresponding to RFC 1178 and RFC 3696.
* **[XrdHttp]** Fix HTTP PUT flags, fixes #637.
* **[XrdHttp]** Close file handle for simple HTTP reads.
* **[All]** Fix compilation with gcc 8.
* **[CMake]** Make sure plugins are declared as MODULEs, fixes #653
* **[SSI]** Ruggedize server-side SSI interactions.
* **[SSI]** Prevent request ID conflicts with reusable resources.
* **[XrdCl]** Validate URLs comming from metalinks.
+ **Miscellaneous**
* **[Server]** Correct lock handling in commit 2c169141.
* **[Server]** Make endsess more reliable.
* **[Server]** Make sure no temporary opens occur during error recovery.
* **[Server]** Add method to get logging mask.
* **[XrdHttp]** Support HTTP chunked transfer encoding.
* **[XrdHttp]** Allow parsing of unknown HTTP verbs.
* **[XrdOss]** Improve XrdPosix 'rename' POSIX compliancy
* **[Proxy]** Make sure to pass through TPC requests in otgoing proxies.
* **[Proxy]** Support progress bar during TPC transfers.
* **[Proxy]** Do not fail a TPC fstat() due to bad timing.
-------------
Version 4.8.1
-------------
+ **Major bug fixes**
* **[XrdCl]** Try all IP addresses in case posix connect fails.
* **[XrdCl]** Fix checksuming in xrdcp for local files.
* **[Py]** Make sure FileSystem::Copy returns a tuple, fixes #633.
* **[Py]** Make sure empty strings are not converted to None.
* **[SSI]** Unbind the request prior to teardown.
* **[SSI]** Avoid SEGV when generating a request for a new TCP
connection.
* **[SSI]** Fix race condition that can cause a SEGV during parallel
execution.
* **[SSI]** Allow zero length requests to be passed to servers.
Fixes #640
* **[SSI]** Make sure to avoid object refs after Finished() is called
to avoid SEGV.
+ **Minor bug fixes**
* **[XrdPosix]** Fix various memory related issues.
* **[XrdCrypto]** Fix various small issues.
* **[Server]** Fix overlapping string copy. Fixes #643
* **[XrdCl]** Provide compatibility between root://localfile and file://.
-------------
Version 4.8.0
-------------
+ **New Features**
* **[XrdCl]** Local redirection and local file support.
* **[XrdCl]** merge xrdfs ls results if not unique, closes #541.
* **[XrdCl]** Provide client specific CGI info.
* **[XrdCl]** File::WriteV implementation, closes #388.
* **[XrdHttp]** Pass the HTTP verb to the external handler for path
matching.
* **[XrdHttp]** Allow one to access the XrdSecEntity object associated
with a request.
* **[XrdHttp]** Allow filtering based on HTTP verb in MatchesPath.
* **[XrdHttp]** Allow overwrites to be done on PUT.
* **[XrdHttp]** Allow multiple external handlers to be loaded by XrdHttp.
+ **Major bug fixes**
* **[Server]** Correctly handle monEnt on file close to avoid SEGV.
Fixes #618.
* **[Server]** Poperly handle file descriptors up to 65535.
Fixes #607.
* **[Server]** Fix handling of >65K attached files (active links).
Fixes #623.
* **[Server]** Make sure doPost does not become <0 (regression introduced
in 4.7.1).
* **[Proxy]** Avoid SEGV when localroot specified w/o remote root.
Fixes #627.
* **[XrdCl]** Connection Window should be applied per IP address.
Fixes #625.
* **[XrdCl]** Write request and raw data with single writev, fixes #609.
* **[XrdHttp]** Allow XrdSfsGetDefaultFileSystem to be called multiple
times.
* **[XrdHttp]** Correct external handling logic.
* **[XrdSecgsi]** Use stack for proper cleaning of invalidated CRLs and CAs.
+ **Minor bug fixes**
* **[Server]** Print error msg and close socket when a FD cannot.
be handled.
* **[Server]** Close additional loophole for fstream disconnect.
* **[Server]** Always unhook the statistcs object from xfr monitoring
if hooked.
* **[Server]** Ruggedize TPC to be less sensitive to protocol violations.
* **[Server]** Correct tpc directive scanning and make it more obvious.
Fixes #604.
* **[Server]** Enable url rewrites. Eliminates GSI roadblock.
* **[Server]** Do not reference a deleted object.
* **[XrdSsi]** Make sure to finalyze all requests upon disc, fixes #616.
* **[XrdHttp]** Handle properly http.secretkey.
* **[XrdCl]** various memory releated fixes.
* **[XrdPy]** Translate binary buffers into bytes objects, closes #632
+ **Miscellaneous**
* **[RPM]** Add python3 sub package.
* **[RPM]** Rename python sub-package, closes #614.
* **[Py]** Facilitate building python bindings with wheel.
-------------
Version 4.7.1
-------------
+ **Major bug fixes**
* **[XrdSecgsi]** Fix segv in cache checking, fixes #595
* **[XrdHttp]** Fix for the persistent connection issue.
* **[XrdHttp]** Fix FD leak when a socket error is encountered.
* **[XrdSsi]** Avoid race condition when response is posted.
* **[XrdSsi]** Avoid state conflict when request is being processed and
client asks for response.
* **[XrdCl]** Prevent segv in case user has no name.
* **[Server]** Close link on enable errors to prevent socket leaks.
+ **Minor bug fixes**
* **[XrdLink]** Increment the IOSemaphore once for each waiting thread.
* **[XrdHttp]** Make sure that the preexisting url tokens are properly
quoted when generating a redirection.
* **[XrdCl]** Fix invalid memory reads/writes when RAII finalizes mutex
after the object has been deleted.
+ **Miscellaneous**
* **[XrdCl]** Log last error in case redirect limit has been reached.
* **[XrdCl]** Add option to read credentials under different fsuid/fsgid.
* **[XrdCl]** Accept empty login response for protocol <= 2.8.9
(This is only to ensure compatibility with dCache, which
due to its inaccurate implementation of XRoot protocol in
some cases returns an empty login response for protocol
version <= 2.8.9.)
* **[XrdCl]** Add envar to config Nagle algorithm.
* **[XrdSsi]** Reinitializ response object after Finished() so it can
reused.
* **[XrdHttp]** Header2cgi directive.
-------------
Version 4.7.0
-------------
+ **New Features**
* **[Proxy]** Make cache I/O synchronization tunable.
* **[Proxy]** Allow caching of S3-style objects.
* **[Proxy/Posix]** Allow Name2Name to populate cache using the LFN.
* **[Posix]** Enable LITE feature in Posix preload library.
* **[Posix]** Implement serverless file caching (disk or memory).
* **[Server]** Allow storing S3-style objects in a file system.
* **[Server]** Add xrootd.fsoverload directive to handle filesystem overloads.
* **[Server]** Allow port to be specified for a supervisor.
* **[Server]** Add org and role types to AuthDB authorization.
* **[Server]** Allow definition and test of compound authorization identifiers.
* **[Server/Packaging]** Handle systemd socket inheritance.
* **[XrdApps]** Add XrdClProxyPlugin implementation.
* **[XrdCl]** Extreme copy implementation.
* **[XrdCl]** Delegate all callbacks to the thread-pool.
* **[XrdCl]** xrdfs: add recursive list, closes #421.
* **[XrdCeph]** Added support for namelib in ceph plugin .
* **[XrdFfs]** Implement xrootdfs_create.
* **[Python]** Python 3 support in C / Python interface.
* **[XrdHttp]** Make XrdHTTP able to forward HTTP requests to an external,
optional plugin (conceptually similar to CGI).
* **[Server]** XrdSsi V2 (scalable service interface) implementation.
+ **Major bug fixes**
* **[XrdCl]** Avoid deadlock between FSH deletion and Tick() timeout.
* **[XrdCl]** Process virtual redierections in the threadpool.
* **[Xrd] Fix handling of sendfile offset argument.
+ **Minor bug fixes**
* **[Server]** Make file locking independent of FS plugin. Fixes #533
* **[Server]** Correct debug message interval for free space report.
* **[XrdCeph]** Fixed internal (f)stat so that it sets S_IFREG in returned mode.
* **[XrdCeph]** properly return ENOENT when file does not exist in open for read.
* **[XrdCeph]** Fixed configuration of the XrdCephOss module.
* **[XrdCeph]** Fixed some resource leak when Posix_Open fails.
* **[XrdFfs]** Remove default fuse argument "allow_other" as it is impossible
to unset.
* **[XrdFfs]** Check file descriptor before using it in xrootdfs wcache.
* **[XrdFfs]** Add more error checks when creating write cache.
* **[XrdFfs]** Avoid using literal 1024, replace with MAXROOTURLLEN.
* **[XrdFfs]** Control allow_other by env XROOTD_NOALLOWOTHER.
* **[XrdFfs]** Rewrite xrootdfs_mknod, extract low-level function.
* **[XrdCl]** Check login resp size, fixes #530
* **[XrdCl]** Avoid FileStateHandler deadlock while forking.
* **[XrdCl]** Handle failed stateful operations without XrdCl::File lock
being locked.
* **[XrdPosix]** Use strncpy when copying checksum.
* **[RPM]** Fix init script bad exit code, fixes #536
* **[XrdBuffer]** Decrement total buffer count when freeing buffers.
+ **Miscellaneous**
* **[Server]** Re-enable the oss.fdlimit directive to allow POSIX preload+xrootd.
* **[Server]** Avoid thread pile-up durin slow close operations.
* **[Proxy]** Simplify delayed destruction on wait vs post.
* **[Posix]** Convert to using universal tracing facility.
* **[CI]** Add Travis CI configuration.
* **[CI]** Add .gitlab-ci.yml for gitlab CI.
* **[Packaging]** Add a sample XrdHttp config file.
* **[Packaging]** Make RPM version configurable by the user.
* **[Packaging]** Debian packaging.
* **[RPM/CMake]** Enable c++0x/c++11 by default.
* **[Crypto] Remove unused crypto code.
* **[XrdFileCache]** Add configuration parameter for flush frequency.
* **[XrdFileCache]** Alter ram limits and blocks size parameter if caching
is on the client side.
* **[XrdSut]** New XrdSutCache based on XrdOucHash.
* **[XrdSecgsi]** do not delete explicitely the CRL in Delete.
* **[XrdSut/Crypto]** Secgsi improvements: new version of XrdSutCache,
lightweith locking (PR #539).
-------------
Version 4.6.1
-------------
+ **Major bug fixes**
* **[Server/Proxy]** Avoid SEGV when close(), closedir() returns an error.
* **[cmsd]** Fix feature interaction causing improper file existence to be sent.
* **[XrdCrypto/XrdSecgsi]** Make sure the CRL is loaded for the right CA.
* **[XrdCrypto]** Support for OpenSSL 1.1
* **[XrdSecgsi]** do not build/package libXrdSecgsiGMAPLDAP-4.so.
* **[XrdSecgsi]** Improve detection of errors when loading CRL.
* **[XrdSecgsi]** Fix for valid legacy proxy detection (PR #469)
* **[XrdSecgsi]** Absent CRLs not an error (#465)
* **[XrdSecgsi]** Fix for CA chain verification segfault (issue #463)
* **[XrdSecgsi]** Two memory leaks (PR #503)
* **[XrdCl]** Make sure there is no request/response mismatch, when
the retry logics tries to recover from an error.
* **[XrdCl/Server]** Be case insensitive when it comes to checksum names.
* **[XrdCeph]** Fix ability to read back a file written with O_RDWR flags.
* **[XrdCeph]** Disable logging of every read and write operation. A proper
debug-level logging would be needed instead.
* **[XrdCeph]** Added statistics about read/write operations in the
close log.
+ **Minor bug fixes**
* **[XrdHttp]** Make the XrdHttpSecXtractor API backwards compatible.
* **[XrdFileCache]** Make caching proxy configuration backwards
compatible.
* **[XrdFileCache]** Fix cache v1 to cache v2 bridge after introducing
cache v2.
* **[XrdSec]** Use CommonCrypto header instead of openssl for SHA on OSX.
* **[XrdSeckrb5]** Fix memory leaks in client context and cache.
* **[Server/Logrotate]** Make sure XRootD logrotate does not interfire with
system logrotate, fixes #490
* ** [Server]** Avoid std::ABORT should a naked logfile path be specified.
* **[XrdCl]** Make sure ForkHandler doesn't segv if PostMaster is null,
fixes #489
* **[Packaging]** Set the working dir to /var/spool/xrootd on CC7,
fixes #365
* **[Packaging]** On platforms where systemd is available, manage files in
/var/run with tmpfiles.d, fixes #485
+ **Miscellaneous**
* **[XrdPosix]** Add new minpages option to pss.cache to support large pages.
* **[XrdPosix]** Make XrdPosix.hh a public header; closes #479
* **[XrdApps]** Remove XrdClient dependency from xrdadler32.
* **[Server]** Add XrdCksAssist functions to help handle XRootD checksums.
* **[Server/Proxy]** Move disk sync operations out of IO::ioActive() call.
* **[Server/Proxy]** Change severity IO::initLocalStat() log message.
* **[XrdFileCache]** Ease development of decision plugins.
* **[XrdFileCache]** Use ref-counts on File objects.
-------------
Version 4.6.0
-------------
+ **New Features**
* **[XrdCms]** Add non-blocking sends to avoid slow links.
* **[XrdFileCache]** File caching proxy V2 (and new pss async interface).
+ **Major bug fixes**
* **[XrdCeph]** Account for return Ceph xattr return codes.
* **[XrdCeph]** Fixed initialization of Ceph clusters when stripers are not used.
* **[XrdCrypto]** Improved determination of X509 certificate type,
including proxy version
* **[XrdHttp]** Fix memory leak in Bridge protocol (affects HTTP).
* **[XrdSecgsi]** Several improvements in the way CRLs are checked and reloaded.
* **[XrdCl]** Protect against spurious wakeups in SyncResponseHandler.
* **[XrdCl]** On read-timeout, if the stream is broken, make sure the request and
its handler are not double deleted.
+ **Minor bug fixes**
* **[XrdCl]** Check if the file was correctly closed upon ZipArchiveReader destruction.
* **[Server]** Add limits for prepare requests.
* **[Server]** Delete buffers when the buffer manager is deleted. Fixes #414
* **[Server]** Do not double count overlapping spaces. Fixes #425
* **[XrdHttp]** Allow unauthenticated https clients.
* **[XrdHttp]** Make Xrdhttp secure by default (rejecting proxy cert in the absence
of a proper SecXtractor plugin)
+ **Miscellaneous**
* **[XrdSecgsi]** Re-activate xrdgsitest
* **[RPM]** Include xrdgsitest in xrootd-client-devel package.
* **[XrdFileCache]** Add example of filecache configuration.
-------------
Version 4.5.0
-------------
+ **New Features**
* **[XrdCms]** Allow specifying a different timeout for null cached entries; fixes #413
* **[XProtocol/XrdSec/Server/XrdCl]** Implement request signing.
* **[XrdCl]** Add ZIP extracting capability to xrdcp.
* **[XrdCl]** Include the release number in client Login request cgi.
* **[XrdCl]** Add support for spaces in file names for mv operation.
+ **Major bug fixes**
* **[XrdCrypto/Secgsi]** Fix XrdCryptosslMsgDigest::Init ; set 'sha256' as
default algorithm.
* **[XrdCl]** Use posix semaphores for fedora >= 22. Disable
omit-frame-ponter for gcc >= 4.9.3 if custom semaphores are used.
+ **Minor bug fixes**
* **[XrdSecsss]** Fix memory leak in sss protocol.
* **[XrdNet]** Allow hostnames to begin with a digit.
* **[XrdCl]** Fix segfault in case a user cannot be mapped to a home directory.
* **[XrdCl]** Make sure a socket is always associated with a proper poller
object (not null).
* **[XrdCl]** Fix deadlock in XrdCl::PollerBuiltIn during finalize.
* **[XrdCrypto]** Do not use md5 checksum on OSX platform.
+ **Miscellaneous**
* **[RPM]** Include xrdacctest in xrootd-server package.
* **[RPM]** Add conditional BuildRequires for ceph >= 11.
* **[RPM]** Use compat-openssl10-devel for fedora>=26.
* **[XrdCl]** Make sure the Log class can be used by any client plugin implementation.
-------------
Version 4.4.0
-------------
+ **New Features**
* **[Server]** Add new [no]rpipa option to xrd.network directive.
* **[Server]** Allow objectid's to be specified in the authorization file.
* **[Server]** Add new logging plugin interface.
* **[Server]** Fixes #345 - add sid to TOD structure (ABI compliant).
* **[Server]** Implement resource selection affinity (primarily for ssi).
* **[XrdCl]** Add Metalink support (xrdcp & API).
* **[XrdCl]** Enable metalink processing on default.
* **[XrdCl]** xrdcp: use cks.type cgi tag to select the checksum type.
* **[XrdCl]** Support local metalink files.
* **[XrdCl]** Add support for GLFN redirector of last resort.
* **[XrdCeph]** Implemented pools of ceph objects.
+ **Major bug fixes**
* **[Posix]** Remove double unlock of a mutex.
* **[Client]** Serialize security protocol manager to allow MT loads.
* **[Authentication/sss]** Fix dynamic id incompatability introduced in 4.0.
* **[XtdHttp]** Removed the deprecated cipher SSLv3, in favor of TLS1.2
* **[XrdCl]** Close file on open timeout.
* **[XrdCl]** Differentiate between a handshake and an xrootd request/response
while processing an incoming/outgoing message.
* **[XrdCl]** Fix dangling pointer issue that occurs while forking.
* **[XrdCl]** Ensure DefaultEnv is finalized after last use of the object.
+ **Minor bug fixes**
* **[Proxy]** Avoid SEGV when printing memory cache statistics.
* **[Server]** Avoid XrdNetIF static initialization issues.
* **[Server]** Honor DFS setting when forwarding operations.
* **[Server]** Make sure lockfile time is updated in deprecated runmodeold.
* **[Server]** Fixes #344 - squash path before checking for static redirect.
* **[Server]** Free Entity before replacing it from the cache (memleak).
* **[XrdCl]** xrdfs ls does not include opaque info in a listing.
* **[XrdCl]** Eliminate unnecessary write notifications.
* **[XrdCl]** Forward xrd.* parameters from the original to the redirection URL.
* **[XrdCl]** Do not preset CWD in batch mode.
* **[XrdCl]** Be complaint with file URI scheme.
* **[XrdCl]** Fix wrong query string used for opaquefile code.
* **[XrdCl]** Translate XRootD error code to errno before passing to strerror.
* **[XrdCeph]** Fixed thread safety of filedescriptors in the ceph plugin.
* **[XrdCeph]** Protected initialization of ioCtx object and striper objects
by mutex in the ceph plugin.
* **[XrdCeph]** Fixed memory corruption in asynchronous read from ceph.
* **[XrdXml]** Make sure c-string buffes are properly terminated.
* **[XtdHttp]** Don't trim printable characters.
+ **Miscellaneous**
* **[XrdCl]** Change the way handlers and messages are matched (use maps).
* **[Apps]** Add xrdacctest to the tools set to test access control databases.
* **[Packaging/RPM]** Set max open files limit to 65k for systemd services.
-------------
Version 4.3.0
-------------
+ **New Features**
* Add option to query network configuration via configured interfaces.
* **[Proxy]** Default event loops to 3 and allow it to be set via config.
* **[Server]** Let client inform redirector why it's retrying a lookup
using the triedrc CGI element.
* **[Server]** Add cms.cidtag directive to qualify the global cluster id
(solves dpm problem).
* **[Server]** Make it possible to effeciently query an external database
for file existence via the statlib plug-in (largely for DPM).`
* **[Server]** Allow declaring extra large I/O buffers (mostly for Ceph).
* **[Server]** Allow iovec based data responses (no ABI changes).
* **[Misc]** Add back trace capability to the tool set.
* **[Misc]** Add generalized XML parsing ability.
* **[Misc]** Add metalink parsing for future integration.
* **[XrdCl]** xrdcp add env var to disable recovery
* **[XrdCl]** Add support for multiple event loops.
+ **Major bug fixes**
* **[Server]** Correct IP address matching between IPv4 and IPv6. Fixes #300.
* **[Server]** Ruggedize cmsd thread synchronization during node deletion.
* **[Server]** Delete extraneous semaphore wait to avoid deadlock (#290).
* **[Server]** Return correct response to a delayed open.
* **[Server]** Fix build of kXR_wait message in case of delayed open.
* **[XrdCl]** Detect whether client is dual stacked based on outgoing
connection in addition to DNS registration.
* **[XrdCl]** Avoid EAGAIN loop. Fixes #303.
* **[XrdCl]** Append opaque info in case we retry at a data server after
being redirected.
* **[XrdCl]** Fix: FileStateHandler::OnOpen seqfaults when both write timeout
and OpenHandler timeout at the same time.
* **[XrdCl]** Avoid SEGV when server fails after it responds waitresp.
* **[XrdCl]** Continue processing remaining files after error occurrence.
* **[XrdCl]** Fix for dangling pointer problem in deep locate, fixes #324
* **[Misc]** Add possibility to specify disk usage parameters in .. G, T units
using XrdOuca2x::a2sz().
* **[Python]** Fix lock inversion in python bindings.
* **[Python]** Check if python interpreter is still initialized.
+ **Minor bug fixes**
* **[All]** Fix numerous issues with space reporting (spaceinfo, query space,
statvfs) such a double counting, scaling, and format issues.
* **[Proxy]** Do not use the ffs code path if nothing is writable. This avoids
initialization failure when the origin is a large WAN cluster.
* **[Server]** Be agnostc NTP defaults when rotating logs (fixes new RH7 defaults).
* **[Server]** Pass correct total data length in iovec to Send().
* **[Server]** Avoid redirection loop during error recovery in a uniform cluster.
* **[Server]** Make sure N2N gets configured for the cmsd when actually needed.
* **[Server]** Properly handle an inifit NPROC limit. Fixes #288.
* **[Server]** Make sure the cluster ID is always formatted the same way.
* **[Server]** Correctly compute timeout wait.
* **[Server/Logrotate]** Make sure rotating pattern is not expanded in an if statement, fixes #302
* **[Misc]** Include XrdXmlReader in the spec file.
* **[Misc]** Fix bug in access statistics print.
* **[Misc]** Allow conversion of decimal numbers in XrdOuca2x::a2sz()
* **[XrdCl]** xrdfs prepare has to be provided with a filename, fixes #309
* **[XrdCl]** Make sure recursive copy is disallowed only for checksum with user provided value, fixes #304
* **[XrdCl]** Use the same timeout value for all close operations in xrdcp with TPC enabled.
* **[XrdCeph]** Fixed race condition in multistream access to files fo CEPH
+ **Miscellaneous**
* **[Server]** Prevent cmsd reconnect storm when things get way slow.
* **[Server]** Changes to allow for Solaris compilation.
* **[Server]** Changes to allow for OSX compilation.
* **[Server]** Detect cyclic DNS host registration when processing '+' hosts.
* **[Server]** Display manager IP addresses during '+' host resolution.
* **[Util]** Avoid compiler warning about unsafe mktemp.
* **[App]** Do not report expected errors as errors.
* **[App]** Always show any unusual node status in the display.
* **[Client/Python]** Add MANIFEST.in for python bindings.
* **[XrdFileCache]** Implement blacklisting in a FileCache decision plugin.
* **[XrdFileCache]** Make sure requested offset is reasonable.
* **[XrdFileCache]** Return -1 and set errno when bad offset is passed in.
* **[XrdFileCache]** Only generate error for negative offsets, as per posix.
* **[XrdFileCache]** Add startup protection for ReadV, too. It was already there for Read.
* **[XrdFileCache]** Fix bug in cache scanning; simplify deletion loop.
* **[XrdFileCache]** Use bytes to calculate how many files to purge, not blocks;
subtract actual size of the file, not the length of it returned by stat.
* **[XrdFileCache]** In cache purge, use stat.mtime of cinfo file if last access time can not
be determined from contents of cinfo file.
* **[XrdFileCache]** Fix argument type from int to long long (was n_blocks, is size_in_bytes now).
* **[XrdCl/XrdSys]** Use custom semaphores only for glibc<2.21.
* **[XrdCl]** Remove libevent-based poller implementaion.
* **[XrdCl]** Report reason for reselection via triedrc CGI element.
* **[XrdClient]** Changes to allow for Fedora rawhide C++11 compilation.
* **[XrdCeph]** Fixed XrdCeph compilation for C++11 enabled compilers
* **[XrdCeph/CMake]** Fix for undefined symbols (link XrdUtils).
-------------
Version 4.2.3
-------------
+ **Major bug fixes**
* **[Server]** Avoid SEGV if cmsd login fails very early.
* **[Server]** Avoid SEGV when an excessively long readv vector is presented.
* **[Server]** Rationalize non-specfic locate requests.
* **[XrdCl]** Process waitresp synchronously via Ignore return to avoid SEGV.
* **[XrdCl]** Avoid memory leak when a handler returns Ignore for a taken message.
* **[XrdCl]** Fix "tried" logic by forwarding the errNo
-------------
Version 4.2.2
-------------
+ **Major bug fixes**
* **[Proxy]** Protect forwarding proxy server from slow connections. This should
fix most, if not all, SEGV's that the server encountered under heavy load.
* **[Server]** Fixes #248 Prevent infinite loop when shift arg is negative.
* **[Server]** Complain when passed I/O length is negative.
* **[Server]** Avoid execution stall during node logout when the thread limit
has been reached.
* **[Server]** Make sure to capture return code for stat() to prevent random
results.
* **[XrdCl]** Make sure to get filestate lock during timeout processing to
avoid MT intereference and possible random results.
* **[XrdClient]** Restore commented out abort() when an attemp is made to index a
vector outside of its current bounds (avoids random results).
* **[Server/Proxy]** Delay deleting a file object if the close was not successful.
This avoids deleting objects that may have pending activity resulting in an
eventual SEGV. This is a bypass fix to another problem.
+ **Minor bug fixes**
* **[Server]** Fixes #234 Properly register all components in a mkpath request.
* Correctly handle copying into a non-existent directory when automatic
path creation is enabled.
* **[XrdCl]** xrdfs correctly handles quotations (fixes the problem with ALICE token)
+ **Miscellaneous**
* Fixes #245 Provide compatability when cmake version is > 3.0.
* Use atomics to manipulate unlocked variable pollNum.
* Bugfix: release lock when a file is closed before the prefetch thread is started.
Observed with xrdcp ran without -f option and an existing local file. Fixes #239.
* Protect from reads exceeding file size. Fixes #249.
* Release Stream lock before invoking callbacks. Fixes #216
* TPC: Fix deadlock in case of error in the TPC authentication
* Increase max size of write to disk queues.
* Fix bug in endswith. Fixes #260
* XrdCeph : fixed problem with files bigger than 2GB for synchronous writes
* **[XrdCl]** Change message loglevel from Error to Debug. Fixes #246.
* **[XrdCl]** Fix race condition in PostMaster initialization
* **[XrdCl]** Provide atomicity for PostMaster value using built-in functions
* **[XrdFileCache]** fixed deadlock on immediate file close (e.g. xrdcp to non-writable output)
* **[XrdFileCache]** fixed errors on some posix operations using virtual mount
-------------
Version 4.2.1
-------------
+ **Miscellaneous**
* **[Client/Cl]** Make sure kXR_mkpath is set for classic copy jobs when the
destination is xrootd (backward compatability fix).
-------------
Version 4.2.0
-------------
+ **New Features**
* **[Client/Python]** Integrate xrootd-python into the main package.
* **[Server]** Include a Ceph OSS plug-ing.
* **[Server]** Implement throttling.
* **[Server]** Detect redirect loops using "tried" token.
* **[Server]** Implement the "cid" option for config query to display the
unique cluster ID.
* **[Server]** Allow suspending and enabling remote debugging without a
restart.
* **[Server]** Implement black/whitelist with optional redirection.
* **[Server/Proxy]** Add the xrdpfc_print tool to print the caching
proxy metadata.
* **[Server/PlugIns]** Provide a mechanism to pass command line arguments
to plug-ins.
* **[Server/PlugIns]** Provide access to the native and the active extended
attribute implementation.
+ **Major bug fixes**
* **[All]** Fix various memory access issues.
* **[Server]** Fix various IPv4/IPv6 compatibility issues.
* **[Server]** Avoid disabling of frm notifications due to plug-in
initialization issues.
* **[Server/Proxy]** Avoid holding a global lock when opening/closing files
to solve timeout issues.
* **[Security/GSI]** Fix reloading of CA and CRLs.
+ **Minor bug fixrs**
* **[Server/HTTP]** Fix issues related to invalid chunk sizes.
* **[Server/Proxy]** Various logic and permission processing fixes.
+ **Miscellaneous**
* **[Client/Cl]** Make the compiler issue warnings when the return codes
from the File and FileSystem methods are unchecked. (issue #188)
* **[RPM]** Disable building of the compat package by default.
* **[Server/Proxy]** Avoid serializing stat() via the proxy to improve
performance.
* **[Tests]** Factor out the common testing code from the client tests so
that it can be re-used.
-------------
Version 4.1.2
-------------
+ **Major bug fixes**
* **[Utils]** Don't confuse -I and --tpc while parsing commandline parameters
for xrdcp. (issue #213)
* **[Server]** Fix various IPv4/IPv6 issues. (issues #164, #227)
+ **Minor bug fixes**
* **[Client/Cl]** Print mtime when doing xrdfs stat.
* **[All]** Fix some memory access issues. (issues #186, #197, #205)
* **[Server]** Recreate logfile fifo if it already exists and is a file.
(issue #183)
* **[Server]** Properly reset suspend state when reconnecting cmsd.
(issue #218)
* **[Server]** Avoid disabling async I/O when using an oss plugin that does
not implement file compression. (issue #219)
* **[Server]** Do not debit space when relocating a file within the same
partition.
* **[Server]** Fix meta-manager port directive ordering.
* **[Server/Logrotate]** Do not print anything to stdout to avoid making cron
send emails to admins. (issue #221)
+ **Miscellaneous**
* **[Server/Proxy]** Disable POSC processing when a proxy plugin is loaded.
-------------
Version 4.1.1
-------------
+ **Major bug fixes**
* **[RPM]** Remove the library patch from xrootd-config to enable multiarch
installations.
* **[RPM]** Move the user creation scriptlets to xrootd-server where they
belong. (issue #179)
* **[Server]** Fix PowerPC compilation. (issue #177)
* **[Server]** Avoid the pitfalls of infinite nproc hard limit in Linux.
* **[Server]** Correct flag definition to include cms plugin loading. (issue #176)
+ **Miscellaneous**
* **[Man]** Update documentation.
* **[Client/Cl]** Set the multi-protocol ability basing on an environment
variable.
-------------
Version 4.1.0
-------------
+ **New Features**
* **[Everyting]** Implement dynamic plugin shared library filename versioning
to allow multiple major versions to co-exist.
* **[Server]** Compelete IPv6/IPv6 and public/private network routing.
* **[Server]** Allow the checksum manager to use OSS layer to access data.
(issue #140)
* **[Server]** Allow the definition of subordinate clusters.
* **[Server]** Support multiple checksum types. Client can select non-default
checksum using the "cks.type=<algorithm>" cgi element.
* **[Server]** Provide plugin interface for handling extended attributes.
* **[Server]** Add options to xrd.network to control keepalive.
* **[Server]** Control core file generation via xrd.sched core directive.
* **[Server]** Add pss.permit directive to restrict outbound connections for
forwarding proxies.
* **[Server]** Allow xrootd to handle objectid names as exports.
* **[Server]** Install and package the cluster mapping utility: xrdmapc.
* **[Server]** Allow the specification of xrootd.seclib default.
* **[Server]** Pass along XRD_MONINFO setting and application name to
monitoring.
* **[Server/Proxy]** Implement a forwarding proxy option.
* **[Server/Proxy]** New configuration of XrdFileCache using 'pfc.' prefix.
* **[Sever/HTTP]** Support gridmap parsing.
* **[Client/Cl]** Inform the server about availability of local IP address
types (IPv6/IPv4, public/private) to in order to facilitate redirections.
* **[Client/Cl]** Make the client send kXR_endsess request when recovering
broken connection - avoids 'file already open' errors.
* **[Client/Cl]** Implement TCP keep-alive support.
* **[Client/Cl/xrdcp]** Optimize xrdcp uploads by compensating for latency.
* **[Client/Cl/xrdcp]** Make it possible for xrdcp to run multiple transfers
in parallel using the '--parallel' option.
* **[Client/Cl/xrdcp]** Make it possible for xrdcp to concatenate multiple