summaryrefslogtreecommitdiffstats
path: root/src/H5VLpassthru.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge VOL framework versioning to 1.12 (#154)Quincey Koziol2020-12-101-1/+1
| | | | | * Enforce VOL framework version compatibility when registering connectors. Also add a version for the connector itself, some refactoring on the register calls, and move the logic for matching / rejecting a VOL connector class from the plugin module to the VOL module. (#151) * Revise VOL framework version compatibility for the 1.12 release branch
* Basic alignment with async branch (#115) (#137)Quincey Koziol2020-11-301-2/+5
| | | | | | | * Basic alignment with async branch - trivial changes to reduce clutter in overall diff. * Update minor error code to reflect change within library * Update the error output to match library
* Source formattedAllen Byrne2020-10-011-638/+639
|
* Sync with developDana Robinson2020-08-011-0/+12
|
* Squashed commit of the following:David Young2020-01-311-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit ff7a9a34de2fcd78f5d32a1532f3d0e224b20d94 Author: Kimmy Mu <kmu@hdfgroup.org> Date: Wed Jan 29 14:12:18 2020 -0600 Merge pull request #2324 in HDFFV/hdf5 from ~KMU/hdf5:hdf5_1_12 to hdf5_1_12 * commit '781fa57f6ee816e037dd12fff02d37ff7ec9c2b1': pick up missing piece from merge Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop remove redundent definition Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop Merge pull request #2315 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop missing prototype warning prototype issue Merge pull request #2306 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop Merge pull request #2300 in HDFFV/hdf5 from ~KMU/hdf5:squashed_cast to develop Merge pull request #2291 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/uninitialized to develop Merge pull request #2295 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/float to develop Merge pull request #2292 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/prototype to develop Merge pull request #2094 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/unused to develop commit 9f3d808c05d2a3b308f32c958c6671fcac0a432c Author: David Young <dyoung@hdfgroup.org> Date: Wed Jan 29 11:43:55 2020 -0600 testpar/t_2Gio.c: Fix a typo that I think was introduced by a previous warnings PR. An array element was assigned to itself---shape[2]Â =Â shape[2];---instead of being assigned to chunk[2]. fortran/src/H5Pf.c: move conditional compilation controlled by H5_NO_DEPRECATED_SYMBOLS outside of a function for readability. fortran/src/H5match_types.c: put a variable's declaration under the same conditional compilation (H5_FORTRAN_HAVE_C_LONG_DOUBLE) as its use. For now, skip compilation of some unused debug dump routines in the JNI. While I'm in the JNI, delete a set-but-unused variable. src/H5Z.c: condition a variable declaration on H5_NO_DEPRECATED_SYMBOLS so that it's not declared but unused or vice versa. test/cache_common.h: add an #include in to get some symbols we need to avoid implicit declaration warnings. test/dsets.c: use a more conventional conditional-compilation syntax. test/dt_arith.c, test/fillval.c: initialize a bunch of uninitialized variables before use. test/vfd.c: pass the expected type of `void **` to posix_memalign(3) instead of `int **`. testpar/t_bigio.c: explicitly compare with 0 instead of using ! when "equal to 0?" is the question not "is false?" Repair some indentation while I'm here. testpar/testpar.h: repair misaligned line-continuation backslashes in a macro that probably should be a function so that we don't have to fiddle with the line continuation to begin with. tools/src/h5repack/h5repack_main.c: fix some compiler fussing about enums. tools/test/perform/pio_engine.c: the compiler fusses if you cast a function call returning double directly to off_t. It's ok if you cast a variable that's a double to off_t, however. Write and use a new function, sqrto(), to avoid the cast warnings. commit 43a4b80b21c0329fbc1f9a0e2854795189f0bb50 Author: David Young <dyoung@hdfgroup.org> Date: Wed Jan 29 10:47:30 2020 -0600 Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required. Reduce gratuitous casts---e.g., (size_t)1. Use the right format string for a pointer. In the H5C sanity checks, change a "size increase" variable from ssize_t (too narrow) to int64_t (wide enough). Parenthesize every appearance of `storage` in the macro `H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an expression like &sc and it works properly. Disallow re-assignment of the `dset` parameter to H5D__chunk_init() because it helped assure me that it's safe to replace the repeating expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout. Replace lengthy expressions such as `&dset->shared->layout.storage.u.chunk` with `sc` throughout several functions in H5Dchunk.c ISTR that the compiler warned that `sc` was declared but unused in a couple of functions, and then I found that `sc` could be used in many places. Maybe the disused `sc` appeared because a bunch of code was copied and pasted, I don't know. Anyway, it's a lot tighter code now that I use `sc`. In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete() I actually expand `sc` and another temporary variable, `pline`, because they're used only in !defined(NDEBUG) code. This squashes unused-variable warnings in the defined(NDEBUG) configuration. Don't drop the `volatile` qualification with a cast in tools/src/h5import/h5import.c. commit 035bfa0769a4012881fc659b673bacf44d146537 Author: David Young <dyoung@hdfgroup.org> Date: Tue Jan 28 20:35:28 2020 -0600 Reduce differences between my -Werror branch and `develop`: Rename index -> idx, fileno -> fnumber, fileno -> fno to avoid GCC shadowed declaration warnings about index(3). Convert #pragma GCC diagnostic push/pop/ignored to the HDF5 library's H5_GCC_DIAG_OFF()/H5_GCC_DIAG_ON() macros.
* Squashed commit of the token_refactoring branch:Dana Robinson2020-01-191-0/+108
|
* Refactor all the 'H5VL_*_optional' callbacks to move the type of operation outQuincey Koziol2020-01-041-135/+263
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of the va_list, so it's at least possible for another connector to know what the operation is and decide whether to implement it or not. Added a new VOL sub-class called "introspect" where callbacks that report information about the connector or container can be placed. Added an 'opt_query' callback to this sub-class, for a connector to report back to the library whether a particular optional callback operation is supported. Also added a 'get_conn_cls' introspection callback, to retrieve the H5VL_class_t of a connector (either the "current" connector, H5VL_GET_CONN_LVL_CURR, or the terminal connector, H5VL_GET_CONN_LVL_TERM). Moved the "post open" operation from a file 'specific' operation to a file 'optional' operation, now that it's possible to detect (with the 'opt_query' introspection callback) whether a VOL connector implements an optional operation, without just returning an error. Added new internal VOL helper routines: H5VL_object_is_native, to determine if an object is in (or is a) native file, and H5VL_file_is_same, to determine if two objects are in (or are) the same terminal VOL connector's container. (And moved the special handling for FILE_IS_EQUAL operation out of internal VOL callback routine into H5VL_file_is_same) Made new dataset 'get' operation for H5Dvlen_get_buf_size, aligning it better with other 'get' operations in API. Fixed several issues with pass-through connectors, which are now passing the 'make check-passthrough-vol' tests again. A bunch of warning and style cleanups as well.
* Trivial parameter renaming in VOL API calls.Dana Robinson2019-12-161-1/+1
|
* Revert "Merge branch 'hdf5_1_12' of ↵Jerome Soumagne2019-12-091-1/+1
| | | | | | | https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into hdf5_1_12" This reverts commit 9f9336a5bd541752f472bab4c93da8de89f862cd, reversing changes made to 437a1919e7ba60fe75a33a466d264183a0255319.
* Merge branch 'hdf5_1_12' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 ↵Richard Warren2019-12-061-2/+2
|\ | | | | | | into hdf5_1_12
| * Implement H5VLget_file_type() to return a copy of a datatype with theNeil Fortner2019-12-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | location set to be in a file. Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs. Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application). Modify vlen and reference interfaces to work with arbitrary VOL connectors. Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
* | Merged HDFFV-10929_2GB_testing to hdf5_1_12Richard Warren2019-12-061-1/+1
|/
* Fix H5VL_blob_get to return size of blobJerome Soumagne2019-10-081-3/+89
| | | | | | | | | | | | | | | | | | | | Fix const in blob API Add H5HG_HEAP_ID_SIZE macro to return native blob size Add maximum size for blobs Fix blob API callbacks to pass VOL file object Add public wrappers for blob VOL API Implement passthrough blob callbacks Update H5Tvlen after callback changes Update trace information for H5VL blob routines Fix public header inclusion in native and passthru headers
* Add 'blob' callbacks to VOL, along with a native implementation to store themQuincey Koziol2019-10-081-4/+10
| | | | | | | in the global heap, and changed the VL datatype conversion code to use blobs. Move encode/decode of sequence lengths into VL datatype callbacks, from native VOL blob routines.
* Fix segfault after H5VL_loc_params_t fix mergeJordan Henderson2019-09-161-2/+2
|
* Merge branch 'develop' into vol_dev_headersDana Robinson2019-06-141-1/+1
|\ | | | | | | | | Also moved the wrapper functions from the H5VLconnector.h to H5VLconnector_passthru.h
| * Added H5Fdelete call and VOL support (but no VFD/native implementation).Dana Robinson2019-06-111-1/+1
| |
* | Split VOL connector routines into separate headers:Dana Robinson2019-05-241-1/+5
|/ | | | | | | | | * H5VLconnector.h for terminal connector things * H5VLconnector_passthru.h for passthrough connector things Note that these headers are arranged such that they are included in hdf5.h so VOL connectors only need to include that. The separation into multiple headers is mainly for readability.
* Refactor group creation parameters to take them out of the group creationQuincey Koziol2019-04-251-3/+4
| | | | property list and pass them as normal function parameters.
* Refactor link creation parameters from being passing as properties in theQuincey Koziol2019-04-251-7/+43
| | | | link creation property list to vararg function parameters.
* Refactor attribute creation parameters to move parameters out of creationQuincey Koziol2019-04-251-3/+4
| | | | property list and into function parameters.
* Refactor dataset creation parameters out of the dataset creation propertyQuincey Koziol2019-04-251-3/+4
| | | | list and pass them as regular function parameters.
* Add an 'unwrap' VOL callback, so that connectors can unwrap an underlyingQuincey Koziol2019-04-211-7/+60
| | | | object without closing it. (Especially needed for pass-through connectors)
* Specify the default VOL connector to use with an environment variable.Quincey Koziol2019-03-101-4/+32
| | | | | | | | This implicitly adds support for changing the VOL connector for command-line tools or any application linked with the library. Also, add 'make check-vol' support for all directories, clearing up necessary issues in testing scripts, etc.
* Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval'Quincey Koziol2019-02-231-62/+70
| | | | classes.
* Add ID type (of eventual hid_t) to the VOL "wrap" callback.Quincey Koziol2019-02-071-3/+4
|
* Corrected comment in src/H5VLint.c, fixed pass-through info size inQuincey Koziol2019-01-061-1/+2
| | | | | | | src/H5VLpassthru.c, switched to stashing VOL connector ID & info in API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work with 'check-vfd' (and 'check-vol' again).
* Fixed an enums-in-va_list issue in the passthru VOL connector.Dana Robinson2018-12-181-2/+2
|
* Updated with extra sanity check and improved comment.Dana Robinson2018-12-171-3/+5
|
* Fixed an issue in the passthru Windows va_copy hack.Dana Robinson2018-12-171-2/+2
|
* Further va_list improvements.Dana Robinson2018-12-171-0/+4
|
* Updated the passthru VOL connector:Dana Robinson2018-12-161-334/+337
| | | | | | | * snprintf --> sprintf (for Windows compat) * tabs --> spaces * removed spurious parens from returns * Changed the logging macro to something less clash-prone
* Refactor allocating & releasing pass through wrapper objects.Quincey Koziol2018-12-031-558/+184
|
* Add a couple of missing prototypes for static routines, along with updatingQuincey Koziol2018-11-301-0/+6
| | | | a comment from VOL plugin -> connector.
* Add support for "make check-vol", along with a few minor cleanups, etc.Quincey Koziol2018-11-291-1/+1
|
* Refactor infrastructure for setting FAPL information from environmentQuincey Koziol2018-11-281-4/+4
| | | | | | variables during testing, including connecting native, pass-through, and dynamically loaded VOL connectors. Also bring native and pass-through VOL connectors into alignment, removing the "H5VLnative_private.h" header.
* Add pass-through VOL connectorQuincey Koziol2018-11-281-0/+3061