summaryrefslogtreecommitdiffstats
path: root/src/H5FDstream.c
Commit message (Collapse)AuthorAgeFilesLines
* [svn-r3225] ./hdf5/src/H5FDstream.cRobb Matzke2000-12-291-7/+8
| | | | | | | 2000-12-29 08:59:03 Robb Matzke <matzke@llnl.gov> * H5FD_stream_query: The `flags' argument is advertised to be output only. Therefore I added code to zero its value before the feature bits are assigned.
* [svn-r3059] Thomas Radke2000-12-011-1/+5
| | | | | | | | | | | | | Purpose: Bugfix Description: Under SunOS 5.5 the symbol FIONBIO wasn't known. Solution: Include <sys/filio.h> which defines this symbol under Solaris. Also put the UNUSED qualifier in the right place in a function argument list (gcc 2.7.2 didn't like it before the type name). Platforms tested: SunOS 5.5 (hatteras), SunOS 5.6 t(thor.sistec.kp.dlr.de)
* [svn-r3010] Purpose:Quincey Koziol2000-11-281-1/+1
| | | | | | | | | | | | | | Bug fix Description: When the v1.2 compatibility code was turned on, internal functions in the library were getting confused. Solution: Separated guts of H5Pget_driver call into an API function (the definition of which depends on the compatibility switch) and an internal function which always behaves like the v1.3/4 function. Replaced API function calls in the library code with the internal function. Platforms tested: FreeBSD 4.2 (hawkwind)
* [svn-r2866] Purpose:Quincey Koziol2000-11-111-2/+2
| | | | | | | | Code cleanup Description: Found more "Have_foo" usage and converted them to "H5_HAVE_foo" Platforms tested: FreeBSD 4.1.1 (hawkwind)
* [svn-r2832] Thomas Radke2000-11-081-1/+1
| | | | | | | | Purpose: Bugfix. Description: Renamed the H5_HAVE_STRUCT_SOCKLEN_T into H5_HAVE_SOCKLEN_T because it isn't really a structure.
* [svn-r2817] Thomas Radke2000-11-081-4/+8
| | | | | | | | | | | | | | | | | | | Purpose: Bugfix Description: The socklen_t was hardcoded to be defined as int on architectures other than Linux and SUN (Solaris). Now it turned out that Solaris isn't consistent in this manner. Versions earlier than 2.7 do not define this type. Solution: Check at configure time whether the socklen_t type is defined by the system header includes. If not than this type is defined to be 'int'. Platforms tested: Solaris 2.6 and 2.7 Linux IRIX64 Windows NT (command line configure with both cl abd gcc)
* [svn-r2811] Dan Wells2000-11-081-1/+1
| | | | | | | | | | | | Purpose: Bug fix. Description: The names of some entries did not correspond with the names in the FUNC_ENTER macro. This would cause inaccuracies during Pablo tracing. Solution: The names were changed in FUNC_ENTER to agree with the entry names. Platforms tested: Solaris, Irix, AIX, HP Vclass
* [svn-r2803] Thomas Radke2000-11-051-2/+2
| | | | | | | | | | | Purpose: Bugfix Description: Large data files were truncated at the receiver's side. Solution: Check against EWOULDBLOCK when sending the data and retry. Platforms tested: T3E (other platforms had no such problem).
* [svn-r2746] Thomas Radke2000-10-281-88/+222
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Purpose: Port to Windows platform Bug fix Description: The Stream VFD is ported to Windows now. Also fixed a bug where an application terminated when it got a SIGPIPE due to sending/receiving on a closed socket. Solution: The socket stuff is treated different under Windows when using the MS compilers to build HDF5. They define their own socket datatype and have closesocket() instead of close(2) to close sockets. Also there are different header files for all the socket stuff. So I introduced my own socket decriptor datatype in H5FDstream.h which should be used to pass in external sockets. This datatype is mapped to either 'int' (UNIX-type sockets) or 'SOCKET' (Windows). In the code the error code checking was adapted according to the socket datatype used. Also, for Windows you have to call a routine to initialize the Socket layer before using it. As a kind of bug fix, the process signal mask is now set to ignore SIGPIPE signals which otherwise cause the application to terminate. The driver read/write routines catch this and return an error code. Platforms tested: Windows NT, both with MS Visual C++ compiler and with GNU cc It is interesting that when compiling with GNU cc under Windows it is possible to use both Windows and UNIX-type sockets (either one or the other). So I check for GNU cc and go for UNIX sockets if possible.
* [svn-r2722] Purpose:Quincey Koziol2000-10-241-1/+2
| | | | | | | | | | Feature symmetry Description: A while ago I needed to get the 'type' of data being accessed during writes to the VFL driver, so I put in code to get the information down there. Albert asked for the same information during reads, so I've added that in. Tested: FreeBSD 4.1.1 (hawkwind)
* [svn-r2679] MuQun Yang2000-10-121-0/+5
| | | | | | | | | | | | | | | | | | | Purpose: Just add a few lines so that it will not break windows platform. Description: netdb.h cannot be recognized by windows, use winsock.h in windows instead. Solution: adding the following lines at the beginning of H5FDstream.c. If you don't like, you may do it in another way, just keep it work for windows. #ifdef WIN32 > #include <winsock.h> > #else > #endif Platforms tested: I am only testing whether it will bother building objects on windows. I haven't tested whether it will affect the testing results. Hopefully not. windows 2000, eirene,arabica,gondolin,paz,opus.
* [svn-r2631] Thomas Radke2000-10-041-8/+9
| | | | | | | | | | | | Purpose: Bugfix Description: The Stream VFD was leaking memory on every opened file. Solution: In H5FD_stream_close(), finally free the file structure used to describe the closed file. Platforms tested: Linux, SGI
* [svn-r2600] Purpose:Quincey Koziol2000-09-261-1/+35
| | | | | | | | | | | Implemented new feature Description: Added data sieve buffering code to raw I/O data path. This is enabled for all the VFL drivers except the mpio & core drivers. Also added two new API functions to control the sieve buffer size: H5Pset_sieve_buf_size() and H5Pget_sieve_buf_size(). Platforms tested: Solaris 2.6 (i.e. baldric)
* [svn-r2555] Purpose:Thomas Radke2000-09-151-0/+984
Added source files for the Stream Virtual File Driver. Description: The Stream VFD allows users to stream complete HDF5 files via socket connections between different applications. Files which were created anew are flushed to any connected client on each H5Fflush() or H5Fclose() operation. Files which are opened as read-only will be read from a socket on a H5Fopen() call. The driver's H5FDset_fapl_stream() routine allows to pass in several parameters such as an external socket descriptor, some socket options, and flags for broadcasting a received file. If an external socket is provided the Stream VFD would use that for the socket calls. Otherwise it parses the filename argument in H5Fcreate()/H5Fopen() for a 'hostname::port' parameter. All files processed by the Stream VFD are kept in memory (same way as the core VFD does). Platforms: Tested so far under Linux, Irix 32/64bit, OSF1, Solaris, Cray Unicos, Hitachi SR8000, IBM AIX. Not tested under Windows yet.