1 /*! 2 * \file db/dbmi_driver/d_finddb.c 3 * 4 * \brief DBMI Library (driver) - find database 5 * 6 * (C) 1999-2008 by the GRASS Development Team 7 * 8 * This program is free software under the GNU General Public 9 * License (>=v2). Read the file COPYING that comes with GRASS 10 * for details. 11 * 12 * \author Joel Jones (CERL/UIUC), Radim Blazek 13 */ 14 15 #include <stdlib.h> 16 #include <grass/dbmi.h> 17 #include "macros.h" 18 #include "dbstubs.h" 19 20 /*! 21 \brief Find database 22 23 \return DB_OK on success 24 \return DB_FAILED on failure 25 */ db_d_find_database(void)26int db_d_find_database(void) 27 { 28 dbHandle handle; 29 int found; 30 int stat; 31 32 /* get the arg(s) */ 33 db_init_handle(&handle); 34 DB_RECV_HANDLE(&handle); 35 36 /* call the procedure */ 37 stat = db_driver_find_database(&handle, &found); 38 39 40 /* send the return code */ 41 if (stat != DB_OK) { 42 db_free_handle(&handle); 43 DB_SEND_FAILURE(); 44 return DB_OK; 45 } 46 DB_SEND_SUCCESS(); 47 48 /* send results */ 49 DB_SEND_INT(found); 50 if (found) { 51 DB_SEND_HANDLE(&handle); 52 } 53 db_free_handle(&handle); 54 return DB_OK; 55 } 56