The mi_lo_tell() function

The mi_lo_tell() function returns the current LO seek position for an open smart large object, relative to the beginning of the smart large object.

Syntax

mi_integer mi_lo_tell(conn, LO_fd, seek_pos)
   MI_CONNECTION *conn;
   MI_LO_FD LO_fd;
   mi_int8 *seek_pos;
conn
This value is one of the following connection values:

A pointer to a connection descriptor established by a previous call to mi_open(), mi_server_connect(), or mi_server_reconnect().

A NULL-valued pointer (database server only)

LO_fd
An LO file descriptor for the open smart large object whose LO seek position you want to determine.
seek_pos
A pointer to the eight-byte integer (mi_int8) into which mi_lo_tell() copies the current LO seek position.
Valid in client LIBMI application? Valid in user-defined routine?
Yes Yes

Usage

The mi_lo_tell() function obtains the LO seek position for the smart large object that LO_fd references. The LO seek position is the offset for the next read or write operation on the smart large object that is associated with the LO file descriptor, LO_fd. The mi_lo_tell() function returns this seek position in the mi_int8 seek_pos variable. For more information about how to access eight-bit (INT8) integers, see the Informix® DataBlade® API Programmer's Guide.

Server only: The mi_lo_tell() function does not need a connection descriptor to execute. If your UDR does not need a valid connection for other operations, you can specify a NULL-valued pointer for the conn parameter to establish a NULL connection. For information about the advantages of a NULL connection, see the Informix® DataBlade® API Programmer's Guide.

Return values

MI_OK
The function was successful.
MI_ERROR
The function was not successful.