| ![[Previous]](../prev.gif) | ![[Contents]](../contents.gif) | ![[Index]](../keyword_index.gif) | ![[Next]](../next.gif) | 
Open a connection and attach it to the HA lib
#include <ha/fcntl.h>
    
int ha_open(const char *path, 
            int oflag, 
            RFp rfn,
            void *rhdl, 
            unsigned haflags, ...);
int ha_open64(const char *path,
            int oflag, 
            RFp rfn,
            void *rhdl, 
            unsigned haflags, ...);
libha
In addition to opening the connection using the standard open|64() call, these convenience functions also call ha_attach() with the connection returned by the open() call.
The parameters rfn(), and rhdl(), and haflags() are passed to the ha_attach() call along with the connection ID returned by the open() call.
The remaining parameters are passed to the corresponding parameters in the open() call in their appropriate positions.
A new connection ID or -1 if an error occurred (errno is set).
The ha_open() call returns errors as returned by either the underlying open() call or the ha_attach() call.
| Safety: | |
|---|---|
| Cancellation point | No | 
| Interrupt handler | No | 
| Signal handler | No | 
| Thread | Yes | 
ha_attach(), ha_creat(), ha_close(), ha_detach()
In the Library Reference: open()
| ![[Previous]](../prev.gif) | ![[Contents]](../contents.gif) | ![[Index]](../keyword_index.gif) | ![[Next]](../next.gif) |