netcdf-c/libdispatch
Dennis Heimbigner 69e84fe9f1 Fix byterange handling of some URLS
re: Issue

The byterange handling of the following URLS fails.

### Problem 1: "https://crudata.uea.ac.uk/cru/data/temperature/HadCRUT.4.6.0.0.median.nc#mode=bytes"
It turns out that byterange in hdf5 has two possible targets: S3 and not-S3 (e.g. a thredds server or the crudata URL above). Each uses a different HDF5 Virtual File Driver (VFD).
I incorrectly set up the byterange code in libhdf5 so that it would choose one or the other of the two VFD's for any netcdf-c library build. The fix is to allow it to choose either one at run-time.

### Problem 2: "https://noaa-goes16.s3.amazonaws.com/ABI-L1b-RadF/2022/001/18/OR_ABI-L1b-RadF-M6C01_G16_s20220011800205_e20220011809513_c20220011809562.nc#mode=bytes,s3"
When given what appears to be an S3-related URL, the netcdf-c library code converts it into a canonical, so-called "path" format. In casing out the possible input URL formats, I missed the case where the host contains the bucket ("noaa-goes16"), but not the region. So the fix was to check for this case.

## Misc. Related Changes
1. Since S3 is used in more than just NCZarr, I changed the automake/cmake options to replace "--enable-nczarr-s3" with "--enable-s3", but keeping the former option as a synonym for the latter. This also entailed cleaning up libnetcdf.settings WRT S3 support
2. Added the above URLS as additional test cases

## Misc. Un-Related Changes
1. CURLOPT_PUT is deprecated in favor to CURLOPT_UPLOAD
2. Fix some minor warnings

## Open Problems
* Under Ubuntu, either libcrypto or aws-sdk-cpp has a memory leak.
2023-03-02 19:51:02 -07:00
..
awsincludes.h Fix additional S3 support issues 2021-10-29 20:06:37 -06:00
CMakeLists.txt fixed parallel functions for netcdf-fortran build 2022-04-24 05:46:55 -06:00
datt.c This PR adds EXPERIMENTAL support for accessing data in the 2020-06-28 18:02:47 -06:00
dattget.c fixed more doxygen warnings 2022-05-29 08:43:56 +03:00
dattinq.c more doxygen warning fixes 2022-05-03 12:54:14 -06:00
dattput.c added anchors for reading_attributes and writing_attributes, and refs to them, also changed order of files in Doxygen.in 2019-11-08 05:19:51 -07:00
dauth.c Merge pull request #2039 from mathstuf/various-fixes 2022-03-10 14:52:30 -07:00
daux.c Merge pull request #2050 from e4t/strict-aliasing 2022-03-10 15:22:58 -07:00
dcompound.c
dcopy.c Fix various problem around VLEN's 2022-01-08 18:30:00 -07:00
dcrc32.c Improve UTF8 Support On Windows 2022-02-08 20:53:30 -07:00
dcrc32.h Provide a Number of fixes/improvements to NCZarr 2020-11-19 17:01:04 -07:00
dcrc64.c Make use of clock_gettime be conditional. 2020-12-06 18:19:53 -07:00
ddim.c formatting cleanup 2019-02-25 07:58:55 -07:00
ddispatch.c Use env variable USERPROFILE instead of HOME for windows and mingw. 2022-06-21 14:09:10 -06:00
defcheck.c
denum.c Support MSYS2/Mingw platform 2021-12-23 22:18:56 -07:00
derror.c Enhance/Fix filter support 2022-03-14 12:39:37 -06:00
dfile.c remove whitespace changes 2023-01-23 10:56:48 -07:00
dfilter.c doxygen for filter functions 2022-05-04 08:04:54 -06:00
dfilterx.c Add filter support to NCZarr 2021-09-02 17:04:26 -06:00
dgroup.c
dhttp.c Fix byterange handling of some URLS 2023-03-02 19:51:02 -07:00
dinfermodel.c fix syntax error 2023-01-23 11:16:36 -07:00
dinstance.c Improve UTF8 Support On Windows 2022-02-08 20:53:30 -07:00
dinternal.c
dnotnc3.c final removal 2019-08-15 07:05:10 -06:00
dnotnc4.c Enhance/Fix filter support 2022-03-14 12:39:37 -06:00
doffsets.c Fix various problem around VLEN's 2022-01-08 18:30:00 -07:00
dopaque.c
dparallel.c documentation improvements for nc_var_par_access() 2020-03-02 16:36:56 -07:00
dpathmgr.c Merge branch 'winutf8.dmh' of https://github.com/DennisHeimbigner/netcdf-c into gh2222.wif 2022-04-05 10:46:22 -06:00
drc.c Fix byterange handling of some URLS 2023-03-02 19:51:02 -07:00
dreadonly.c removed NC from open in dispatch table 2019-08-01 14:30:20 -06:00
dreg.c BLD: Get netCDF4 build working on Windows. 2022-10-12 10:56:17 -04:00
ds3util.c Fix byterange handling of some URLS 2023-03-02 19:51:02 -07:00
dstring.c Merge branch 'master' into byterange.dmh 2019-01-25 14:50:23 -07:00
dtype.c
durlmodel.c Prepare for the path management code 2020-10-13 19:12:15 -06:00
dutf8.c
dutil.c Add a check for HAVE_DECL_ISINF and HAVE_DECL_ISNAN in support of https://github.com/Unidata/netcdf-c/issues/2132 2022-11-16 15:41:38 -07:00
dv2i.c Change in support of https://github.com/Unidata/netcdf-c/issues/2599 2023-02-01 15:27:02 -07:00
dvar.c Fix Memory Leak 2023-01-26 13:11:25 -07:00
dvarget.c removed non-relaxed coord bounds from test code 2019-11-26 06:20:34 -07:00
dvarinq.c First draft of Granular BitGroom feature for netcdf-c 2021-10-20 16:00:32 -07:00
dvarput.c now always relax! 2019-11-26 05:36:16 -07:00
dvlen.c Fix various problem around VLEN's 2022-01-08 18:30:00 -07:00
ezxml_extra.c Significantly Improve Amazon S3 Cloud Storage Support 2021-09-27 18:36:33 -06:00
json.c
Makefile.am fixed parallel functions for netcdf-fortran build 2022-04-24 05:41:14 -06:00
nc.c Dangling undefined references to nulldup. These should be unified in a header, but that is a separate issue to open/resolve. For now, resolving these as part of getting mingw/msys2-based github actions working. 2022-01-24 13:48:41 -07:00
ncbytes.c Fix infinite loop in file inferencing 2022-12-18 13:18:00 -07:00
ncexhash.c Support MSYS2/Mingw platform 2021-12-23 22:18:56 -07:00
nchashmap.c change to trigger CI 2022-04-27 09:52:00 -06:00
ncjson.c Fix some problems with PR https://github.com/Unidata/netcdf-c/pull/2492 2022-09-03 14:21:48 -06:00
nclist.c Fix infinite loop in file inferencing 2022-12-18 13:18:00 -07:00
nclistmgr.c Change (again), and hopefully simplify, the file model inference algorithm. 2019-09-29 12:59:28 -06:00
nclog.c Add support for Zarr string type to NCZarr 2022-08-27 20:21:13 -06:00
ncs3sdk.cpp Fix byterange handling of some URLS 2023-03-02 19:51:02 -07:00
ncsettings.hdr
nctime.c Fix for :60 seconds in ncdump 2021-01-26 10:24:43 +02:00
ncuri.c Merge pull request #2039 from mathstuf/various-fixes 2022-03-10 14:52:30 -07:00
ncxcache.c Move to Version 2 NCZarr Extended Meta-Data 2021-07-17 16:55:30 -06:00
netcdf.m4
stubdef.c
u8.c
u8.h
utf8proc_data.c
utf8proc.c
utf8proc.h Spelling fixes 2019-09-18 08:03:01 -06:00