Commit Graph

116 Commits

Author SHA1 Message Date
Dennis Heimbigner
645da599da conflicts 2014-06-26 16:42:13 -06:00
Dennis Heimbigner
641c982c8c synch with git/oc 2014-06-26 16:40:08 -06:00
dmh
ecec75fcb2 make0 2014-06-25 22:18:22 -06:00
Ward Fisher
7f812b367e Manual merge of pull request https://github.com/Unidata/netcdf-c/pull/64 contributed by nschloe. Assorted CMake improvements. 2014-06-11 15:51:31 -06:00
dmh
ed068ef643 Fix misc. typos from previous commit 2014-06-02 14:02:34 -06:00
dmh
774428f2fd There are a number of cases in the oc code
where a procedure is defined to return int
and really returns OCerror. This causes
problems in AIX. Fixed those I could find.
2014-05-08 14:13:51 -06:00
dmh
ed5a504417 Fix int/enum conversion bug: re esupport (TXX-867549) 2014-05-06 13:10:59 -06:00
Ward Fisher
e599edaec1 Fixed a declaration error in Visual Studio. 2014-04-23 13:29:39 -06:00
Ward Fisher
a8aac6f568 Corrected a null dereference error. 2014-04-18 19:13:34 -06:00
Ward Fisher
b34956e06e Fixed clang-reported issue: dereference of undefined pointer value. 2014-04-18 17:02:58 -06:00
dmh
98d27e838d [NCF-299]
When a .dodsrc file is present, and
specifies user name and password,
it is being ignored after the first time.

Fix required a major rewrite of ocrc.c because
it was mishandling a number of .dodsrc entries.
2014-04-16 14:08:12 -06:00
dmh
4346b01c19 note jna problem 2014-04-15 21:25:44 -06:00
dmh
fb00c88763 fix bugs introduced by previous coverity fixes 2014-04-07 14:01:40 -06:00
dmh
389d2ea394 fix some coverity complaints 2014-04-07 13:00:47 -06:00
Ward Fisher
76e5e0f1fa Addressed several minor issues revealed by static analysis (coverity, clang). Mostly to do with extreme corner cases in which a null pointer would be dereferenced, or dereferencing a non-null (but non-initialized) pointer would result in garbage. 2014-03-28 17:11:26 -06:00
Ward Fisher
de08275c1c Added checks for CURLOPT_USERNAME and CURLOPT_PASSWORD. If they are not found, CURLOPT_USERPWD is used instead. This is important because, on some Windows systems, libcurl does not provide CURLOPT_USERNAME or CURLOPT_PASSWORD. 2014-03-17 15:57:44 -06:00
dmh
b524e151ef Remove last vestiges of thredds-test 2014-03-14 14:07:35 -06:00
dmh
c7086dd04b Add support to detect authorization errors to DAP 2014-03-11 11:58:22 -06:00
dmh
a189b98b0b 1. Any test that references nctestserver/NC_findtestserver
should be under ENABLE_DAP_REMOTE_TESTS.
   Fixed to make sure that this is so.
   Also attempted to fix ncdap_test/CMakeLists.txt,
   but probably got it wrong.
   HT to Nico Schlomer.
2. Attempted to reduce the number of conversion errors
   when -Wconversion is set. Fixed oc2, but
   rest of netcdf remains to be done.
   HT to Nico Schlomer.
3. When doing #2, I discovered an error in ncgen.y
   that has remained hidden. This required some other
   test case fixes.
2014-03-08 20:41:30 -07:00
Ward Fisher
fcb0eb2df6 Corrected an error preventing netcdf from compiling. 2014-03-03 15:36:19 -07:00
dmh
ba726d55ce synch with oc2.0 2014-03-03 13:43:47 -07:00
Quincey Koziol
d033f9f6ff Clean up Coverity warnings from last checkin. 2014-02-20 08:24:55 -06:00
Quincey Koziol
4bfd9b27a0 Merge remote-tracking branch 'upstream/master'
Conflicts:
	libdap2/common34.c
	oc2/ocutil.c
2014-02-11 17:26:09 -06:00
dmh
8541a32175 [NCF-284]/ ZQX-155900
Some servers do not properly
implement the current DAP2 spec.
It turns out that this server is one of those:
    http://nomads.ncep.noaa.gov:9090/
When a reference such as this is made:
    http://nomads.ncep.noaa.gov:9090/dods/gens/gens20140123/gep_all_12z?prmslmsl[0][0][0][0:359]
tt is returning this:
Dataset {
    float prmslmsl[ens=1][time=1][lat=1][lon=360];
} gens%2fgens20140123%2fgep_all_12z;

when it should be returning this:
Dataset {
  Structure {
    float prmslmsl[ens=1][time=1][lat=1][lon=360];
  } prmslmsl;
} gens%2fgens20140123%2fgep_all_12z;

The reason is that when picking fields out of a grid,
one must maintain the fully qualified name, so the grid
is converted to an enclosing structure.

It turns out that the problem was that
when I create the new structure node, I was
improperly linking it into the existing graph.
This caused a null pointer failure.
Fix is to make sure the relevant field (node->root)
is set.
2014-01-24 13:26:00 -07:00
dmh
75adeae78b add some debug info about packet contents 2014-01-21 13:04:52 -07:00
dmh
0fa9dc98eb synch oc 2014-01-21 12:50:15 -07:00
Ward Fisher
2957645985 Addressed a coverity issue of minor importance. 2014-01-15 12:48:21 -07:00
Quincey Koziol
cd71eb525c Corrected "BAIL" macros to avoid infinite loop when logging is disabled and an
error occurs after an "exit:" label.

Corrected a dozen Coverity errors (mainly allocation issues, along with a few
    other things):
        711711, 711802, 711803, 711905, 970825, 996123, 996124, 1025787,
        1047274, 1130013, 1130014, 1139538

Refactored internal fill-value code to correctly handle string types, and
    especially to allow NULL pointers and null strings (ie. "") to be
    distinguished.  The code now avoids partially aliasing the two together
    (which only happened on the 'write' side of things and wasn't reflected on
    the 'read' side, adding to the previous confusion).

    Probably still weak on handling fill-values of variable-length and compound
    datatypes.

Refactored the recursive metadata reads a bit more, to process HDF5 named
    datatypes and datasets immediately, avoiding chewing up memory for those
    types of objects, etc.

Finished uncommenting and updating the nc_test4/tst_fills2.c code (as I'm
    proceeding alphabetically through the nc_test4 code files).
2013-12-29 01:12:43 -06:00
Ward Fisher
0af7499eb4 Added a couple items to .gitignore.
Corrected an issue reported by Coverity static analysis where memory was allocated but was not freed.
2013-12-04 16:02:43 -07:00
Quincey Koziol
e66e6e2b3a Merge remote-tracking branch 'upstream/master' 2013-11-30 23:24:44 -06:00
Ward Fisher
d484b9ac33 Corrected two possible ‘uninitialized variable’, ‘dereference null pointer’ bugs identified via clang static analysis. 2013-11-27 17:03:59 -06:00
Ward Fisher
1d007eb101 Addressed a number of minor bugs reported by Clang. 2013-11-20 13:37:21 -07:00
dmh
d6061db87d define mode_t when under windows 2013-11-15 15:41:17 -07:00
dmh
baed147ba4 [NCF-277]
Fix Http Basic Authorization.
The problem is really in oc2.0.
In order for it to work,
the CURLOPT_COOKIEJAR must have
a non-null value. The code
was already there, but not being
used for some reason.
1. fixed cookiejar code in oc2.0
2. synched oc2.0 with netcdf-c/oc2
3. added a test case
2013-11-15 11:38:54 -07:00
dmh
2bc308432d sync with oc2.0 2013-11-14 15:13:20 -07:00
Quincey Koziol
7a4479be6b Minor cleanups to reduce warnings in headers, and switch from MPI_BYTE to MPI_INT
for MPI_Allreduce() call.
2013-09-14 13:19:58 -05:00
Ward Fisher
71e8ed54cd Addressed Coverity issue 711904, 'Insecure temporary file'. 2013-08-14 11:21:18 -06:00
Ward Fisher
f51f97546b Addressed Coverity issue 752015, resource leak. 2013-08-14 09:51:10 -06:00
Ward Fisher
f43bf8f1da Addressed a handful of issues identified by
Coverity static analysis.
2013-08-05 20:36:33 +00:00
Dennis Heimbigner
beba09e70b 1. The duplicate name checking in oc2 was
effectively o(n cubed); modified to be
   o(n squared).
2. If the list of prefetched variables is too long,
   (something on the order of 400 variables), then
   the server may reject it. Modified code so that
   in the case that the set of prefetch'd vars is
   the in fact all variables, it does not create a long
   request. This does not actually solve the problem
   if the prefetch list is long, but not all inclusive.
2013-07-27 20:54:50 +00:00
Dennis Heimbigner
fcecd1a2bc 1. The duplicate name checking in oc2 was
effectively o(n cubed); modified to be
   o(n squared).
2. If the list of prefetched variables is too long,
   (something on the order of 400 variables), then
   the server may reject it. Modified code so that
   in the case that the set of prefetch'd vars is
   the in fact all variables, it does not create a long
   request. This does not actually solve the problem
   if the prefetch list is long, but not all inclusive.
2013-07-27 20:20:13 +00:00
Dennis Heimbigner
9979a2fa60 Synch with oc2.0 2013-06-26 21:46:54 +00:00
Dennis Heimbigner
628aed80d9 1. synch changes with oc2.0
2. Fix a bug in ncgen to
   catch a special case of a malformed
   datalist.
2013-06-26 18:55:30 +00:00
Ward Fisher
33d3d06971 Added initial 'make dist', 'make distcheck' support to
CMake-based builds.
2013-06-03 16:42:04 +00:00
Ward Fisher
da16fc1cde Fixed an issue with Windows builds
not compiling due to how
ssize_t was being detected/defined.
2013-05-24 21:19:07 +00:00
Dennis Heimbigner
228e8439d2 1. The code to parse a constraint
was losing the initial double quote
for a quoted string.
2. The code in ncuri.c was not properly
   handling occurrences of e.g. %xx
2013-05-16 21:37:58 +00:00
Dennis Heimbigner
254c0e7c96 Historically
ncgen3 and ncgen
have treated 
uppercase atomic types
the same as lower case.
Change so upper case are no
longer allowed.

Also, synch oc.
2013-05-15 17:37:04 +00:00
Dennis Heimbigner
de34ed2d5b merge from netcdf/trunk prior to merge back to trunk 2013-05-11 19:37:38 +00:00
Dennis Heimbigner
3b0fb5bd82 Synch oc2 with baseline oc2.0 2013-05-11 19:36:31 +00:00
Dennis Heimbigner
c583f91992 merge with trunk and fix conflicts 2013-05-10 17:04:28 +00:00