Commit Graph

102 Commits

Author SHA1 Message Date
Quincey Koziol
ba087ce2b5 Clean up private / package / static namespace issues (function naming, which
header file, FUNC_ENTER / LEAVE, etc).  Removed remaining personal email
addresses from library source code (still needs cleaned from other directories).
Misc. warning, style, and whitespace cleanup.
2020-08-22 14:00:44 -05:00
Allen Byrne
5ba81f88a3 Whitespace cleanup 2020-05-13 08:18:11 -05:00
Dana Robinson
14c286d51a Fixed HDFFV-10214:
* Updated comments in the library to accurately reflect the semantics
  of the H5FD_FEAT_POSIX_COMPAT_HANDLE flag.
* Removed the check for the POSIX compatible handle feature flag
  when determining if a VFD supports SWMR.
Partial work for HDFFV-10197:
* Added a new H5FD_FEAT_DEFAULT_VFD_COMPATIBLE feature flag that is
  set when a VFD creates output that is compatible with the default
  VFD. Will be used in the testing but might also be generally useful
  to users.
2017-05-19 14:58:34 -07:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
Quincey Koziol
0313cbb91d Final merge of page buffering branch to develop 2017-03-13 21:30:37 -07:00
Quincey Koziol
64a339183f Bring SWMR support in to the main development branch. (Finally!) More tests
and the tool and API wrappers will be coming in over the weekend.
2016-12-02 08:07:04 -08:00
Quincey Koziol
b092dbcdfd Bring over another batch (hopefully the last) of non-SWMR "normalization"
changes from the revise_chunks branch.
2016-11-28 16:34:36 -08:00
Quincey Koziol
83724bd787 [svn-r30113] Description:
Clean up warnings (from 2774 -> 1560, with my standard debug build)

Tested on:
    MacOSX/64 10.11.5 (amazon) w/serial, parallel & production
    (h5committest forthcoming)
2016-06-28 16:53:48 -05:00
Dana Robinson
6dc56e664b [svn-r29011] LFS changes in the autotools and library.
* We assume that fseeko and ftello exist.

* The *64 IO functions and types are no longer explicitly used.
  We now rely on a mapping provided by _FILE_OFFSET_BITS (or its
  equivalent).

* _LARGEFILE(64)_SOURCE is no longer exposed via AM_CPPFLAGS.

The CMake files have not yet been updated but CMake is still
functional. The CMake configure files will just run a few
unecessary tests and create unneeded #defines until they are
updated in a few days.

Tested on: Linux, OS X, Solaris, z/OS
2016-01-28 15:44:11 -05:00
Dana Robinson
7e4fb72913 [svn-r28626] Brought VFD-level file locking code over from revise_chunks.
Tested on:
    Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1
    serial only
    (these changes have been in revise_chunks for a long time)
2015-12-14 05:03:54 -05:00
Dana Robinson
c226e58005 [svn-r27626] Various minor warning fixes before major SWMR and VDS merges.
gcc 4.9.2 was used to create the warning list

- implicit casts
- shadowed variables
- various enum issues
- other minor fixes (comments, unused macros, etc.)

Tested on: h5committest
2015-08-31 14:04:23 -05:00
Dana Robinson
2e6100fb23 [svn-r27572] Removed VMS-specific code from the library.
The only remaining code consists of a few floating-point tests
that rely on pre-generated and checked-in VMS files. These have
been left alone, even though they will not be possible to
recreate, since testing VMS float behavior is still important.

Tested on: h5committest
2015-08-24 15:19:39 -05:00
Mohamad Chaarawi
fc45d5fcb0 [svn-r27133] - Add a new attribute function characterstic for format:
* H5_ATTR_FORMAT(X,Y,Z)  __attribute__((format(X, Y, Z)))
- Rename UNUSED attribute characterstic to H5_ATTR_UNUSED.
- Rename NORETURN attribute characterstic to H5_ATTR_NORETURN

tested with h5committest.
2015-06-01 14:38:09 -05:00
Mohamad Chaarawi
5eee1d7d7e [svn-r26002] move checks on reading/writing beyond file eoa outside of the file drivers and into a centralized place in H5FD_read/write.
tested h5committest.
2015-01-22 12:15:21 -05:00
Quincey Koziol
b65eae7aee [svn-r25929] Description:
Clean up EOF code within library and add 'mem_type' parameter to 'get_eof'
VFD callback, to avoid various ambiguous situations, particularly with the
multi VFD.  (Supports changes for 'avoid_truncate' feature also)

Tested on:
    MacOSX/64 10.10.1 (amazon) w/serial & parallel
    h5committest forthcoming
2014-12-29 01:02:06 -05:00
Allen Byrne
53afd20aeb [svn-r23854] HDFFV-8302: Add macros/code function to use coorect Windows (v)snprintf statement. Also fix use other uses of macros for windows.
Tested
2013-07-01 09:23:04 -05:00
Quincey Koziol
0fc1c9c519 [svn-r23313] Description:
Bring changes from Coverity branch to the trunk:

r20612:
Changed string functions to versions with string length to fix coverity issues
922, 942 and 943.

r20614:
Use HDsnprintf. --gh

r20675:
Fix for coverity #1714 due to the fix for #810.  
Use HDfree() instead of H5MM_xfree().

r20678:
Repaired coverity issue #598 -- failure to check return value from a
call to fstat(), or to tidy up in the event of failure.

r20679:
Use HDstrncpy. --gh

r20681:
Use HDstrncat and HDstrncpy. --gh


Tested on:
    Mac OSX/64 10.8.2 (amazon) w/Debug, etc.
    (too minor to require h5committest)
2013-02-25 09:48:42 -05:00
Quincey Koziol
d91625d139 [svn-r23238] Description:
Bring changes from Coverity branch to trunk:

r20528:
Purpose: Fix coverity issue 1372

Description: Rewrite file open secition of H5FD_stdio_open to avoid TOCTUO
condition.  No longer calls access, and uses a tentative open in "rb" or "rb+"
mode to check for existence of the file.

r20609:
Use HDstrncpy and HDstrncat. --gh

r20611:
Use HDstrncpy. --gh


Tested on:
    Mac OSX/64 10.8.2 (amazon) w/debug, C++ & FORTRAN
    (h5committest not required, already tested on branch)
2013-02-08 15:36:31 -05:00
Vailin Choi
a9602d1b34 [svn-r22676] Changes needed to make the default free-list mapping from H5FD_FLMAP_SINGLE to H5FD_FLMAP_DICHOTOMY. 2012-08-13 15:04:20 -05:00
Dana Robinson
ea8166cf62 [svn-r22211] STDIO VFD fixes (HDFFV-7917). Mainly Windows correctness issues (propagated from the SEC2 VFD and the old Windows VFD) and issues where large files are accessed.
Tested on:
64-bit Mac OS-X
64-bit Windows 7
jam
koala
ostrich
2012-03-30 16:42:47 -05:00
Allen Byrne
d4ab4456d0 [svn-r22175] MinGW compile issues fixed.
Reviewed

Tested: windows (big test using stdio ony fails - this will be filed for further investigation)
2012-03-28 17:00:41 -05:00
Allen Byrne
2457d8ecaf [svn-r21366] JIRA HDFFV-2748 replace use of _WIN32 in source. Created new defines H5_HAVE_WIN32_API and H5_HAVE_VISUAL_STUDIO defines to use. These can be properly set during configurration.
Tested: windows and local linux - reviewed internally
2011-09-06 11:50:32 -05:00
Quincey Koziol
8a5e400fda [svn-r20588] Description:
Clean up code a bit, move new "terminate" VFD callback to new position
in H5FD_class_t struct.

Tested on:
    Mac OS X/32 10.6.7 (amazon) w/debug & production
    (h5committest not required on this branch)
2011-04-21 08:55:52 -05:00
Quincey Koziol
7c921910d0 [svn-r20587] Description:
Initial commit of John Biddescomb's VFD & MPI tweaks.

Tested on:
    None (yet)
    (h5committest not required for this branch)
2011-04-21 06:53:45 -05:00
Albert Cheng
0e77cc6fa0 [svn-r19847] Bug 1917: Big test failure
Removed all the unused code bracketed by #ifdef FSEEKO incorrectly.

Tested: h5committest.
2010-11-25 15:59:36 -05:00
Albert Cheng
d9adf2d78d [svn-r19785] Bug 1917: Disabled an incorrect condition that whether STDIO VFD supports
larger than 32bits I/O depends on the support of fseeko.  Windows does not
use that. Instead, it uses _fseeki64 to support larger than 32bits I/O.

Tested: jam (linus) and  bangan (windows)
2010-11-15 16:44:33 -05:00
Albert Cheng
3d1da26381 [svn-r19195] Bug fix: ID 1917
Fixed a typo in the Windows definitions. Had __ftelli64, should be _ftelli64.

Tested by Allen in Windows platform.
2010-08-09 10:46:07 -05:00
Albert Cheng
b1f07ee397 [svn-r19188] Bug fix: ID 1917
The STDIO only checked for fseeko and incorrectly assumed it can support file
sizes larger than 32bits. Fixed it by making to use fseeko64 if supported, else
use fseeko.  To simplify the code, assume fseeko which is a POSIX function must
be supported. Therefore, fseek is not used at all.
(Note: the above applies to Unix-like system.  The Windows platform has
hardcoding using Windows functions which are NOT POSIX compliant.)

Tested: h5committested. Also tested in BP (AIX) 32/64 and enable/disable-largefile.
2010-08-06 14:47:42 -05:00
Vailin Choi
9957d5f8e9 [svn-r18922] Fix for failures for test/mf.c on windows:
1. H5FD_stdio_truncate() windows code: need to do a rewind
2. Make sure fsinfo.fs_addr is initialized before creating the message.
2010-05-28 10:46:33 -05:00
Quincey Koziol
b9ca2f8f6f [svn-r18650] Description:
Bring back various minor tweaks & cleanups from the revise_chunks
branch.

Tested on:
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (jam) w/PGI compilers, w/default API=1.8.x,
                w/C++ & FORTRAN, w/threadsafe, in debug mode
        Linux/64-amd64 2.6 (amani) w/Intel compilers, w/default API=1.6.x,
                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2010-04-27 17:15:14 -05:00
Quincey Koziol
9b2c4bea02 [svn-r18011] Description:
Bring Coverity changes into the trunk: (also other minor cleanups)

r17991:
Fix Coverity items 175 and 176.  Fixed memory leak on error in print_enum in
H5LT.c.

r17993: (r17992 was not a Coverity change)
Close Coverity issue #206: inconsistently checking whether dt->shared was
non-NULL after H5T_alloc() returned a valid 'dt' value (which should guarantee
that dt->shared is valid).

r17994:
Fix Coverity item 149.  Fixed file handle leak on error in H5FD_stdio_open.

r17995:
Fixed Coverity issues 154 to 161:

 Added H5MP_close routine to error handling in the event *mp has not been
 freed before error.

r17996:
Close Coverity issue #126: potentially leaking merged_spans on routine failure.

r17997:
Fix Coverity items 147 and 148.  Fixed resource leaks on error in H5FDloc.c.

r17998:
Coverity issue 269-272:
    Added integer result variable to functions that could return negative.
        Assigned to unsigned after checking.
    Added H5E_BEGIN_TRY block around H5Tclose and removed H5E_THROW in the
        catch block.
    Checked buffer is NULL before free. Changed HGOTO_ERROR outside of the if
        block to H5E_THROW.

r17999:
Close Coverity issue #127: release temporary spans in more generic manner.
(Also add error checking to previous fix)

r18000:
Resolved Coverity issues 211 and 212 in H5T.c. Added comments to ignore
Coverity warning regarding not checking pointer for NULL, as we are using
an assert which catches the issue.

r18001:
Fix Coverity item 146.  Fixed resource leak on error in H5O_layout_copy.

r18002:
Fix Coverity items 143 and 145.  Fixed resource leaks on error in
H5D_compact_copy and H5D_contig_copy.

r18003:
Close Coverity issue #192: close file on error

r18004:
Fix Coverity issue #125: release temporary spans on error

r18005:
Resolved Coverity issues 5, 25, and 83 (in H5T.c):

    Separated embedded functions in order to check for NULL on return of
        H5I_object before passing into H5T_copy.

    Check to see if new_dt is NULL within error handling before
        dereferencing it.

    Ignore Coverity's dead code warnings as the checks that lead to the code
        are machine dependent.

r18006:
Coverity 63,70,73:  Checked result of function before assigning to an unsigned
variable.

r18007:
Coverity 78,79:   added continue statement if H5Pget_filter2 returns negative.

r18008:
Fixed Coverity issue # 138:

    Added support in error handling to free dst pointer (if allocated) on error.

r18009:
Whitespace & coding style cleanup
2009-12-13 00:28:30 -05:00
Quincey Koziol
ab58cdcecd [svn-r17021] Description:
Make error handling for detecting overlaps between 'normal' and 'temporary'
space allocation more robust.

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
        in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in debug mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.5.7 (amazon) in debug mode
    Mac OS X/32 10.5.7 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-06-09 16:11:41 -05:00
Quincey Koziol
b4ff3e6e79 [svn-r16560] Description:
Remove another call to H5E_clear_stack() from within the library.

    Clean up lots of compiler warnings.

Tested on:
    Mac OS X/32 10.5.6 (amazon)
    (followup on other platforms forthcoming)
2009-03-10 14:00:39 -05:00
Quincey Koziol
22cd1b61cc [svn-r15861] Description:
Various bug fixes & cleanups with VFDs and file free space changes,
along with cleaning up compiler warnings.

	Enable more VFDs (for 'make check-vfd' testing) for many tests.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2008-10-14 08:16:25 -05:00
Quincey Koziol
9f60f016ab [svn-r15800] Description:
Bring file free space branch changes through r15795 into trunk, which
includes a fair bit of code cleanup & rearrangement along with a couple of
bug fixes also.

Tested on:
        Mac OS X/32 10.5.5 (amazon) in debug mode
        Mac OS X/32 10.5.5 (amazon) w/C++ & FORTRAN, w/threadsafe,
                                in production mode
        FreeBSD/32 6.3 (duty) in debug mode
        FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
        Linux/32 2.6 (kagiso) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
                                in debug mode
        Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
                                w/C++ & FORTRAN, in production mode
        Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
                                w/szip filter, in production mode
        Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
                                in production mode
        Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
        Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
2008-10-06 23:17:35 -05:00
Quincey Koziol
bdd7d59902 [svn-r15628] Description:
Remove trailing whitespace from C/C++ source files, with the following
script:

    foreach f (*.[ch] *.cpp)
        sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
    end

Tested on:
    Mac OS X/32 10.5.5 (amazon)
    No need for h5committest, just whitespace changes...
2008-09-16 10:52:51 -05:00
Quincey Koziol
f8a796ebfc [svn-r15510] Description:
Clean up warnings & formatting

Tested on:
	Mac OS X/32 10.5.4 (amazon)
	More tests forthcoming
2008-08-21 15:30:19 -05:00
Scott Wegner
87a41d4286 [svn-r13766] In Visual Studio 2005 for 64-bit, _WIN32 is defined, but not WIN32, so I've standardized all #ifdef's to use _WIN32. This should not affect any other platform.
Tested:
Visual Studio (32- and 64-bit) on Win XP
2007-05-18 10:14:43 -05:00
Quincey Koziol
d6bb18abbc [svn-r13648] Description:
Rename new error handling API routines from H5E<foo>_stack() to
H5E<foo>2().

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    FreeBSD/32 6.2 (duty)
    FreeBSD/64 6.2 (liberty)
2007-04-11 20:59:45 -05:00
Quincey Koziol
78158e8dbf [svn-r13635] Description:
Clean up code and reduce compiler warnings...

Tested on:
    Mac OS X/32 10.4.9 (amazon)
2007-04-11 10:36:06 -05:00
Raymond Lu
6f7ab83c3c [svn-r13594] Change a comment line. No test needed. 2007-04-05 15:13:11 -05:00
Raymond Lu
81a128e5de [svn-r13590] Take out the unused header file errno.h. 2007-04-04 17:22:44 -05:00
Raymond Lu
3431f74c43 [svn-r13588] A support of files bigger than 2GB for STDIO driver. Configure will
check if fseeko is available.  Using it instead of fseek can support
big files because the offset is of type off_t not long int.  Also 
added the test for STDIO in big.c.
2007-04-04 14:59:00 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
Quincey Koziol
7320ccac2d [svn-r13248] Description:
More progress on creation order for attribbutes - they are now basically
working for "compact" attribute storage.

Tested on:
	FreeBSD/32 6.2 (duty)
	Mac OS X/32 10.4.8 (amazon)
2007-02-06 15:03:06 -05:00
Raymond Lu
77ce08c356 [svn-r13139] Fixed the MULTI problem (Bug #731) that corrupted the data. The problem
came from the EOA for the whole MULTI file.  It's taken out because it's
meaningless for MULTI file.  Instead, each individual file has its EOA.
2007-01-12 15:29:43 -05:00
Quincey Koziol
79aecf8953 [svn-r12706] Description:
Clean up some of the warnings on 64-bit Linux...

Tested on:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
    Too minor to require h5committest
2006-10-02 14:59:46 -05:00
Quincey Koziol
6b45f5172c [svn-r11245] Purpose:
Code cleanup

Description:
    Trim trailing whitespace, which is making 'diff'ing the two branches
difficult.

Solution:
    Ran this script in each directory:

foreach f (*.[ch] *.cpp)
    sed 's/[[:blank:]]*$//' $f > sed.out && mv sed.out $f
end


Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-08-13 15:53:35 -05:00
Quincey Koziol
af6276f654 [svn-r10628] Purpose:
Code cleanup

Description:
    Clean up various warnings reported by the Windows team.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Too minor to require h5committest
2005-04-18 16:21:35 -05:00
Quincey Koziol
afdf7fcfa6 [svn-r10144] Purpose:
Bug fix

Description:
    The GASS VFL driver header file was bringing in the <string.h> header file,
which several other source code modules needed also, but weren't including
explicitly themselves.

Solution:
    Add includes for <string.h> to files which actually need them.

Platforms tested:
    FreeBSD 4.11 (sleipnir) w/C++ as CC
    Configuration not tested by h5committest...
2005-03-04 12:01:02 -05:00