00001 #include <stdlib.h> 00002 #include <grass/dbmi.h> 00003 #include "macros.h" 00004 #include "dbstubs.h" 00005 00012 int 00013 db_d_list_indexes() 00014 { 00015 dbIndex *list; 00016 dbString table_name; 00017 int count; 00018 int stat; 00019 00020 /* arg(s) */ 00021 db_init_string (&table_name); 00022 DB_RECV_STRING (&table_name); 00023 00024 /* call the procedure */ 00025 stat = db_driver_list_indexes (&table_name, &list, &count); 00026 db_free_string (&table_name); 00027 00028 /* send the return code */ 00029 if (stat != DB_OK) 00030 { 00031 DB_SEND_FAILURE(); 00032 return DB_OK; 00033 } 00034 DB_SEND_SUCCESS(); 00035 00036 /* send results */ 00037 DB_SEND_INDEX_ARRAY (list, count); 00038 db_free_index_array (list, count); 00039 return DB_OK; 00040 }