Commit Graph

7494 Commits

Author SHA1 Message Date
Ward Fisher
1bf99871bd
Merge pull request #1755 from gsjaardema/patch-43
Avoid potential integer overrun
2020-06-11 12:38:44 -06:00
Greg Sjaardema
edf0ca6c98
Avoid potential integer overrun
It is possible for the values stored to `file_value_size` to overrun the storage capacity of a 32-bit integer.  The value does need to store negative values potentially, so can be `size_t` or `hsize_t`, so use the `hssize_t` which is a signed 64-bit value.  Could also use `ssize_t`, but that is not used in this routine...
2020-06-10 15:42:22 -06:00
LProx2020
e4e0e93402
Updated README.md Links
Reference: Issue #1711
-The proper link was provided for the Language Independent User's Guide.
-The proper link was provided for the NetCDF-Java/Common Data Model Library
2020-06-04 14:16:30 -04:00
Ward Fisher
b36c9c5b3f
Merge pull request #1747 from NOAA-GSD/ejh_fix
fixed LDFLAFS in plugins Makefile.am, also fixed warning in tst_h_vars.c, restore NC_NOTNC3_get|put_varm() functions
2020-06-03 13:47:39 -06:00
Ward Fisher
386e269528
Merge pull request #1752 from sayerhs/master
Fix parallel NetCDF checks in configure.ac for spectrum MPI
2020-06-03 13:25:01 -06:00
Shreyas Ananthan
e11bc3509d Fix parallel NetCDF checks in configure.ac for spectrum MPI
Closes #1751
2020-06-03 13:13:35 -04:00
Edward Hartnett
87226c4879 readded NOTNC3 varm functions to dispatch 2020-06-03 05:55:30 -06:00
Edward Hartnett
9f6fc00f98 changed back to totally dead 2020-06-02 13:59:08 -06:00
Edward Hartnett
97c2335adc changed to only MOSTLY dead 2020-06-02 07:51:59 -06:00
Edward Hartnett
993c8259c2 fixed LDFLAFS in plugins Makefile.am, also fixed warning in tst_h_vars.c 2020-06-02 07:34:46 -06:00
Ward Fisher
bc77f3c199
Merge pull request #1742 from bombipappoo/fix-keyword
Fix incorrect keywords.
2020-06-01 14:05:35 -06:00
Ward Fisher
18f43d646e
Merge pull request #1744 from DennisHeimbigner/dap4memleaks.dmh
Fix some memory leaks in libdap4
2020-06-01 13:16:27 -06:00
Dennis Heimbigner
7ec762ea8d Fix some memleaks in libdap4
Discovered that there were some remaining memory leaks
in the dap4 code as a result of PR https://github.com/Unidata/netcdf-c/pull/1743.
Found and fixed.
2020-06-01 12:35:24 -06:00
Ward Fisher
4cb66b96c5
Merge pull request #1743 from DennisHeimbigner/hyrax4fix.dmh
Fix some protocol differences between netcdf-c and the Hyrax server.
2020-06-01 10:51:22 -06:00
Dennis Heimbigner
0b3f8dddf9 Make CMake tests work for dap4 2020-06-01 09:27:57 -06:00
Dennis Heimbigner
07e1620f53 Add more dap4 tests for CMake 2020-05-31 13:25:53 -06:00
Dennis Heimbigner
6e715135ba Fix windows \r problem 2020-05-30 20:14:45 -06:00
Dennis Heimbigner
65414eeaa4 Fix some protocol differences between netcdf-c and the Hyrax server.
re: Partly addresses issue https://github.com/Unidata/netcdf-c/issues/1712.

1. Turn on Hyrax Hack to accept Hyrax style attribute containers.
2. Support Url type as alias for String.
3. Accept the special attribute, "__DAP4_Checksum_CRC32",
   to control per-variable checksums.
4. Make _DAP4_xxx attributes be reserved and only accessible
   by name (ala _SuperBlock attribute).
5. Fix handling of checksums. There is a hack in the code
   that uses an extra flag in the chunk header to indicate
   that all variables have checksums. This violates the spec
   and will be removed once it is possible to regenerate the
   test cases.

Note that checksumming with the Hyrax test server has not
been tested. This, along with some other probable inconsistencies,
needs fixing when OPeNDAP and Unidata can agree on the proper
specification. Testing will be included.
2020-05-30 17:36:25 -06:00
bombipappoo
e0b37bc31f Fix incorrect keywords. 2020-05-30 14:22:37 +09:00
Ward Fisher
43417c9f7f
Merge pull request #1741 from LProx2020/patch-1
Updating Links in FAQ.md
2020-05-29 12:48:14 -06:00
LProx2020
316dfea205
Update FAQ.md
This edit updates the broken links discussed in Issue #1696
2020-05-29 11:58:38 -04:00
Ward Fisher
39636b3f23
Merge pull request #1738 from DennisHeimbigner/xgetoptfix.dmh
Condition XGetOpt on MSC_VER not WIN32
2020-05-26 16:23:45 -06:00
Dennis Heimbigner
0b65f608cc Condition XGetOpt on MSC_VER not WIN32 2020-05-25 10:45:47 -06:00
Dennis Heimbigner
d3b53c0215 Make plugin noop1 be distcleaned 2020-05-21 13:48:31 -06:00
Ward Fisher
c2ea69df23
Merge pull request #1732 from DennisHeimbigner/vsfix.dmh
Fix undefined references when using Visual Studio
2020-05-19 16:21:04 -06:00
Ward Fisher
11799a5c24
Merge pull request #1731 from ZedThree/fix-fedora-hdf5
Fix wrong header include in testing HDF5 for zlib
2020-05-19 15:35:17 -06:00
Dennis Heimbigner
c68c4c804d Fix undefined references when using Visual Studio
Fix Issue https://github.com/Unidata/netcdf-c/issues/1725.
Replace PR https://github.com/Unidata/netcdf-c/pull/1726
Also replace PR https://github.com/Unidata/netcdf-c/pull/1694

The general problem is that under Visual Studio, we are seeing
a number of undefined reference and other scoping errors.
The reason is that the code is not properly using Visual Studio
_declspec() declarations.

The basic solution is to ensure that when compiling the code itself
one needs to ensure that _declspec(dllexport) is used. There
are several sets of macros to handle this, but they all rely
on the flag DLL_EXPORT being define when the code is compiled,
but not being defined when the code is used via a .h file.

As a test, I modified XGetOpt.c to build properly. I also
fixed the oc2 library to properly _declspec things like ocdebug.

I also made some misc. changes to get all the tests to run
if cygwin is installed (to get bash, sed, etc).

Misc. Changes:
* Put XGetOpt.c into libsrc and copy at build time
  to the other directories where it is needed.
2020-05-18 19:36:28 -06:00
Dennis Heimbigner
173339759f Merge remote-tracking branch 'Unidata/master' 2020-05-16 15:13:28 -06:00
Peter Hill
e1ef7a958c Fix wrong header include in testing HDF5 for zlib 2020-05-16 12:45:13 +01:00
Ward Fisher
0ab5b1bab0
Merge pull request #1727 from ddirks/nav-tree_fix
Ensure nav-tree is the correct height
2020-05-14 17:19:34 -06:00
Ward Fisher
afd110ba6b
Merge pull request #1728 from lesserwhirls/nctime
Improve ncdump handling of time units
2020-05-14 15:58:55 -06:00
Dennis Heimbigner
2aef2d2e9a restore 2020-05-14 14:55:38 -06:00
Dennis Heimbigner
518d70ef64 ocdebug 2020-05-14 14:44:48 -06:00
Dennis Heimbigner
9e5f08d0e1 Merge remote-tracking branch 'Unidata/master' 2020-05-14 10:36:23 -06:00
Sean Arms
7e2408680c Define strncasecmp as _strnicmp on Windows 2020-05-14 07:27:30 -06:00
Sean Arms
c37cc13dca Treat time units as case-insensitive in ncdump
Enables ncdump -t (-i) to recognize a wider variety of time related units
and calendar names. This brings ncdump closer to what it advertises in its
man page regarding its understanding of udunits compliant time units.
2020-05-14 06:48:03 -06:00
Sean Arms
9c84724d5e Test ncdump time unit name case-insensitivity
As ugly as it is, "DaYs since ..." is a valid UDUNITS unit.
Only symbols are case-sensitive in UDUNITS.
2020-05-14 06:42:12 -06:00
Douglas Dirks
ccdac4bf60 Ensure that the nav-tree extends to the full height of the content area. The footer must be enclosed in a div element with the id="nav-path" for this to work. 2020-05-13 16:45:35 -06:00
Ward Fisher
fc1d75f842
Merge pull request #1721 from gsjaardema/patch-39
Different method of setting Parallel Filters variables
2020-05-13 15:05:34 -06:00
Dennis Heimbigner
7ad0d97bce Merge remote-tracking branch 'Unidata/master' 2020-05-12 19:42:09 -06:00
Ward Fisher
9f6981bc6b
Merge pull request #1719 from DennisHeimbigner/filterrepeat.dmh
Allow redefinition of variable filters
2020-05-12 16:03:51 -06:00
Ward Fisher
3214967163
Merge pull request #1724 from gsjaardema/patch-41
Fix CMake generation of netcdf_meta.h
2020-05-12 16:01:35 -06:00
Dennis Heimbigner
528829c97e Merge remote-tracking branch 'Unidata/master' 2020-05-12 12:32:00 -06:00
Greg Sjaardema
485810262d
Fix CMake generation of netcdf_meta.h
These changes seem to be correct for the generation of `netcdf_meta.h` in a CMake build.  I think this addresses #1723 

There is still an issue with the libnetcdf.settings
2020-05-11 16:53:30 -06:00
Ward Fisher
625d3337f1
Merge pull request #1722 from gsjaardema/patch-40
Remove duplicate references to error4.c
2020-05-11 14:26:03 -06:00
Greg Sjaardema
605b9ccd66
Remove duplicate references to error4.c
The `error4.c` file is already listed in `libsrc4_SOURCES`, so does not need to be added again later.  The file's contents are only compiled if `LOGGING` is defined, so is ok to always compile.
2020-05-11 13:21:10 -06:00
Greg Sjaardema
8d7d5ac9e5
Different method of setting Parallel Filters variables
The current method of setting the `HDF5_HAS_PAR_FILTERS` and `HAS_PAR_FILTERS` variables is done purely based on the `HDF5_VERSION` and that variable is only set inside the if block which finds the HDF5 library based on CMake package files.  If the user specifies the explicit location of the HDF5 library and include files (for example, via:
```
         -DHDF5_C_LIBRARY:PATH=${INSTALL_PATH}/lib/libhdf5.${LD_EXT} \
         -DHDF5_HL_LIBRARY:PATH=${INSTALL_PATH}/lib/libhdf5_hl.${LD_EXT} \
         -DHDF5_INCLUDE_DIR:PATH=${INSTALL_PATH}/include
```
Then, the code path which determines whether the par filters variables is set is not run.  However, later on in the file, there is another check for parallel filter support (near line 759):
```
  # Check to see if this is hdf5-1.10.3 or later.
  CHECK_LIBRARY_EXISTS(${HDF5_C_LIBRARY_hdf5} H5Dread_chunk "" HDF5_SUPPORTS_PAR_FILTERS)
```

This PR moves the code that sets the two other par filters variables down after this check and instead of setting their values based on the version, it bases it on the results of this test.

I'm not totally sure why there are three variables; it looks like the `HDF5_SUPPORTS_PAR_FILTERS` and `HDF5_HAS_PAR_FILTERS` could be combined.  I think the `HAS_PAR_FILTERS` is a string which is used to show the results of the configuration and the other two are booleans.

The new check should work for both types of HDF5 installs (cmake-based and configure-based)
2020-05-11 11:11:24 -06:00
Dennis Heimbigner
4e37d68cb1 uintptr for VS 2020-05-11 10:35:56 -06:00
Dennis Heimbigner
84c69afca7 Allow redefinition of variable filters
re: Github issue https://github.com/Unidata/netcdf-c/issues/1713

If nc_def_var_filter or nc_def_var_deflate or nc_def_var_szip is
called multiple times with the same filter id, but possibly with
different sets of parameters, then the first invocation is
sticky and later invocations are ignored. The desired behavior
is to have the last invocation be used.

This PR implements that desired behavior, with some special
cases.  If you call nc_def_var_deflate multiple times, then the
last invocation rule applies with respect to deflate. However,
the shuffle filter, if enabled, is always applied just before
applying deflate.

Misc unrelated changes:
1. Make client-side filters be disabled by default
2. Fix the definition of uintptr_t and use in oc2 and libdap4
3. Add some test cases
4. modify filter order tests to use plugin filters rather
   than client-side filters
2020-05-11 09:42:31 -06:00
Dennis Heimbigner
e47a2a3037 Merge branch 'master' of https://github.com/DennisHeimbigner/netcdf-c 2020-05-08 15:18:20 -06:00