diff options
Diffstat (limited to 'src/interfaces/odbc/lobj.c')
-rw-r--r-- | src/interfaces/odbc/lobj.c | 186 |
1 files changed, 0 insertions, 186 deletions
diff --git a/src/interfaces/odbc/lobj.c b/src/interfaces/odbc/lobj.c deleted file mode 100644 index 6b55b82d54e..00000000000 --- a/src/interfaces/odbc/lobj.c +++ /dev/null @@ -1,186 +0,0 @@ -/*-------- - * Module: lobj.c - * - * Description: This module contains routines related to manipulating - * large objects. - * - * Classes: none - * - * API functions: none - * - * Comments: See "notice.txt" for copyright and license information. - *-------- - */ - -#include "lobj.h" - -#include "connection.h" - - -Oid -lo_creat(ConnectionClass *conn, int mode) -{ - LO_ARG argv[1]; - int retval, - result_len; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = mode; - - if (!CC_send_function(conn, LO_CREAT, &retval, &result_len, 1, argv, 1)) - return 0; /* invalid oid */ - else - return retval; -} - - -int -lo_open(ConnectionClass *conn, int lobjId, int mode) -{ - int fd; - int result_len; - LO_ARG argv[2]; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = lobjId; - - argv[1].isint = 1; - argv[1].len = 4; - argv[1].u.integer = mode; - - if (!CC_send_function(conn, LO_OPEN, &fd, &result_len, 1, argv, 2)) - return -1; - - if (fd >= 0 && lo_lseek(conn, fd, 0L, SEEK_SET) < 0) - return -1; - - return fd; -} - - -int -lo_close(ConnectionClass *conn, int fd) -{ - LO_ARG argv[1]; - int retval, - result_len; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = fd; - - if (!CC_send_function(conn, LO_CLOSE, &retval, &result_len, 1, argv, 1)) - return -1; - else - return retval; -} - - -int -lo_read(ConnectionClass *conn, int fd, char *buf, int len) -{ - LO_ARG argv[2]; - int result_len; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = fd; - - argv[1].isint = 1; - argv[1].len = 4; - argv[1].u.integer = len; - - if (!CC_send_function(conn, LO_READ, (int *) buf, &result_len, 0, argv, 2)) - return -1; - else - return result_len; -} - - -int -lo_write(ConnectionClass *conn, int fd, char *buf, int len) -{ - LO_ARG argv[2]; - int retval, - result_len; - - if (len <= 0) - return 0; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = fd; - - argv[1].isint = 0; - argv[1].len = len; - argv[1].u.ptr = (char *) buf; - - if (!CC_send_function(conn, LO_WRITE, &retval, &result_len, 1, argv, 2)) - return -1; - else - return retval; -} - - -int -lo_lseek(ConnectionClass *conn, int fd, int offset, int whence) -{ - LO_ARG argv[3]; - int retval, - result_len; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = fd; - - argv[1].isint = 1; - argv[1].len = 4; - argv[1].u.integer = offset; - - argv[2].isint = 1; - argv[2].len = 4; - argv[2].u.integer = whence; - - if (!CC_send_function(conn, LO_LSEEK, &retval, &result_len, 1, argv, 3)) - return -1; - else - return retval; -} - - -int -lo_tell(ConnectionClass *conn, int fd) -{ - LO_ARG argv[1]; - int retval, - result_len; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = fd; - - if (!CC_send_function(conn, LO_TELL, &retval, &result_len, 1, argv, 1)) - return -1; - else - return retval; -} - - -int -lo_unlink(ConnectionClass *conn, Oid lobjId) -{ - LO_ARG argv[1]; - int retval, - result_len; - - argv[0].isint = 1; - argv[0].len = 4; - argv[0].u.integer = lobjId; - - if (!CC_send_function(conn, LO_UNLINK, &retval, &result_len, 1, argv, 1)) - return -1; - else - return retval; -} |