* lo_creat * create a new large object * the mode is ignored (once upon a time it had a use) * * returns the oid of the large object created or * InvalidOid upon failure */
| 441 | * InvalidOid upon failure |
| 442 | */ |
| 443 | Oid |
| 444 | lo_creat(PGconn *conn, int mode) |
| 445 | { |
| 446 | PQArgBlock argv[1]; |
| 447 | PGresult *res; |
| 448 | int retval; |
| 449 | int result_len; |
| 450 | |
| 451 | if (lo_initialize(conn) < 0) |
| 452 | return InvalidOid; |
| 453 | |
| 454 | argv[0].isint = 1; |
| 455 | argv[0].len = 4; |
| 456 | argv[0].u.integer = mode; |
| 457 | res = PQfn(conn, conn->lobjfuncs->fn_lo_creat, |
| 458 | &retval, &result_len, 1, argv, 1); |
| 459 | if (PQresultStatus(res) == PGRES_COMMAND_OK) |
| 460 | { |
| 461 | PQclear(res); |
| 462 | return (Oid) retval; |
| 463 | } |
| 464 | else |
| 465 | { |
| 466 | PQclear(res); |
| 467 | return InvalidOid; |
| 468 | } |
| 469 | } |
| 470 | |
| 471 | /* |
| 472 | * lo_create |