12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495 |
- /*
- * Licensed Materials - Property of IBM and/or HCL
- *
- * IBM Informix Dynamic Server
- * Copyright IBM Corporation 1996, 2013
- * (c) Copyright HCL Technologies Ltd. 2017. All Rights Reserved.
- *
- ***************************************************************************
- *
- * Title: milib.h
- * Description: MIAPI constants, enums, data structures, and prototypes
- *
- ***************************************************************************
- */
- #ifndef _MILIB_H_
- #define _MILIB_H_
- #ifndef _MITYPES_H_
- #include "mitypes.h"
- #endif /* _MITYPES_H_ */
- #ifndef _MEMDUR_H_
- #include "memdur.h"
- #endif /* _MEMDUR_H_ */
- #include "xa.h"
- /*
- * Define NULL if we don't have it yet
- */
- #ifndef NULL
- #include <stddef.h>
- #endif /* NULL */
- /*
- * Asynchronous action possibilities
- */
- typedef enum mi_async_action
- {
- MI_AS_NONE,
- MI_AS_RESULT,
- MI_AS_ROW,
- MI_AS_ERROR,
- MI_AS_DEAD,
- MI_AS_UNKNOWN
- } MI_ASYNC_ACTION;
- enum mi_nologmodecheck_duration
- {
- MI_ONCE, /* Until one database is open */
- MI_SESSION /* for the entire session */
- };
- /*
- * Callbacks
- */
- typedef enum mi_event_type
- {
- MI_EVENT_SAVEPOINT = -3, /* For new savepoint CB Test */
- MI_EVENT_COMMIT_ABORT = -2, /* Reserved */
- MI_All_Events = -1, /* Special All Events flag */
- MI_Exception = 0, /* an exception, (server error) */
- MI_Alerter_Fire_Msg = 1, /* An alerter callback */
- MI_Delivery_Status_Msg = 2, /* A Delivery Status callback */
- MI_Query_Interrupt_Ack = 3, /* A Query Interrupt acknowledgement */
- MI_Client_Library_Error = 4, /* Client-side library errors */
- MI_Xact_State_Change = 5, /* Transaction State Change */
- MI_Print = 6, /* print a text string */
- MI_Request = 7, /* prompt for & get a user response */
- MI_EVENT_END_STMT = 8, /* Callback event for end of
- statement */
- MI_EVENT_END_SESSION = 9, /* Callback event for end of session */
- MI_EVENT_END_XACT = 10, /* Callback event end of transaction
- when memory is freed */
- MI_EVENT_POST_XACT = 11, /* Reserved */
- MI_EVENT_MAX = 12,
- /* synonyms, for backwards compatibility: */
- MI_EVENT_ALL_EVENTS = MI_All_Events,
- MI_EVENT_EXCEPTION = MI_Exception,
- MI_EVENT_ALERTER_FIRE_MSG = MI_Alerter_Fire_Msg,
- MI_EVENT_DELIVERY_STATUS_MSG = MI_Delivery_Status_Msg,
- MI_EVENT_QUERY_INTERRUPT_ACK = MI_Query_Interrupt_Ack,
- MI_EVENT_CLIENT_LIBRARY_ERROR = MI_Client_Library_Error,
- MI_EVENT_XACT_STATE_CHANGE = MI_Xact_State_Change,
- MI_EVENT_PRINT = MI_Print,
- MI_EVENT_REQUEST = MI_Request
- } MI_EVENT_TYPE;
- /*
- * Valid Callback Retcodes
- */
- typedef enum mi_callback_status
- {
- MI_CB_CONTINUE = 0,
- MI_CB_EXC_HANDLED = 1
- } MI_CALLBACK_STATUS;
- /*
- * Cursors
- */
- /* Masks for cursor definition */
- #define MI_BINARY 0x0001 /* return result in binary */
- #define MI_SEND_SENSITIVE 0x0002 /* cursor is sensitive */
- #define MI_SEND_READ 0x0004 /* cursor is readonly */
- #define MI_SEND_SCROLL 0x0008 /* cursor is scrollable */
- #define MI_SEND_REOPT 0x0010 /* reoptimizing cursor */
- #define MI_SEND_HOLD 0x0020 /* hold cursor */
- /* Used with parameterized queries and cursors. */
- typedef enum mi_cursor_action
- {
- MI_CURSOR_NEXT,
- MI_CURSOR_PRIOR,
- MI_CURSOR_FIRST,
- MI_CURSOR_LAST,
- MI_CURSOR_ABSOLUTE,
- MI_CURSOR_RELATIVE,
- MI_CURSOR_CURRENT
- } MI_CURSOR_ACTION;
- /*
- * Different types of ID's
- */
- typedef enum mi_id
- {
- MI_SESSION_ID,
- MI_STATEMENT_ID
- } MI_ID;
- /*
- * Func Call (Client Function Types)
- */
- typedef enum mi_functype
- {
- MI_C_FUNC,
- MI_VISUAL_BASIC_FUNC,
- MI_PASCAL_FUNC
- } MI_FUNCTYPE;
- /*
- * Error Raise Levels
- */
- #define MI_MESSAGE 1
- #define MI_NOTICE MI_MESSAGE
- #define MI_EXCEPTION 2
- #define MI_WARN MI_EXCEPTION
- #define MI_SQL 3
- #define MI_FATAL 4
- /*
- * Library Errors
- */
- #define MI_LIB_BADARG 5 /* Bad arg to LIBMI function */
- #define MI_LIB_USAGE 6 /* Bad LIB usage sequence */
- #define MI_LIB_INTERR 7 /* Internal error */
- #define MI_LIB_NOIMP 8 /* feature not implemented */
- #define MI_LIB_DROPCONN 9 /* Connection to server lost */
- #define MI_LIB_BADSERV 10 /* Can't connect to server */
- /*
- * Execution modes
- */
- /* Masks for mi_exec() */
- #define MI_QUERY_NORMAL 0x0000 /* string rep return values */
- #define MI_QUERY_BINARY 0x0001 /* binary return values */
- /*
- * Return values from mi_get_result()
- */
- #define MI_ERROR (mi_integer)(-1)
- #define MI_NO_MORE_RESULTS (mi_integer)0
- #define MI_ROWS (mi_integer)1
- #define MI_DML (mi_integer)3
- #define MI_DDL (mi_integer)4
- #define MI_FUNCTION_RESULTS (mi_integer)5
- #define MI_END_OF_DATA (mi_integer)6
- #define MI_OK (mi_integer)0
- /*
- * Special return value for the streamwrite() and streamread() support
- * UDR's. These UDR's should return MI_MISSING_DATA instead of MI_OK or
- * MI_ERROR when the streamwrite() routine could not access out-of-row
- * data.
- */
- #define MI_MISSING_DATA (mi_integer) -2
- /*
- * Return values for mi_tab_check_msg
- */
- #define MI_INVALID_CALL (mi_integer)1
- /*
- * Return values for mi_value()
- */
- #define MI_NORMAL_VALUE 0x0000
- #define MI_NULL_VALUE 0x0001
- #define MI_ROW_VALUE 0x0002
- #define MI_COLLECTION_VALUE 0x0003
- /*
- * Return value for mi_call routine
- */
- #define MI_MAXARGS (mi_integer)10
- #define MI_NOMEM (mi_integer)-1 /* Same as defined in mt.h */
- #define MI_DONE (mi_integer)0 /* Same as defined in mt.h */
- #define MI_CONTINUE (mi_integer)1
- #define MI_TOOMANY (mi_integer)2 /* Too many argments */
- /*
- * Return values for: (also use MI_ERROR and MI_OK)
- *
- * mi_named_alloc()
- * mi_named_zalloc()
- * mi_named_get()
- * mi_lock_memory()
- * mi_unlock_memory()
- * mi_try_lock_memory()
- *
- */
- #define MI_NAME_ALREADY_EXISTS (mi_integer)1
- #define MI_NO_SUCH_NAME (mi_integer)2
- #define MI_LOCK_IS_BUSY (mi_integer)3
- #define MI_POTENTIAL_DEADLOCK (mi_integer)4
- /*
- * Set Requests
- */
- typedef enum mi_setrequest
- {
- SET_INIT,
- SET_RETONE,
- SET_END,
- SET_INVALID
- } MI_SETREQUEST;
- /*
- * Miscellaneous
- */
- #define MI_TRUE ((mi_boolean) 1)
- #define MI_FALSE ((mi_boolean) 0)
- #define MI_READ_ALL_ROWS -999
- #define MI_CURRENT_CLASS -999
- /*
- * Transition states for callbacks
- */
- typedef enum
- {
- MI_BEGIN,
- MI_NORMAL_END,
- MI_ABORT_END
- } MI_TRANSITION_TYPE;
- #define MI_XACT_BEGIN MI_BEGIN
- #define MI_XACT_END MI_NORMAL_END
- #define MI_XACT_ABORT MI_ABORT_END
- /*
- * Return values for mi_transaction_state
- */
- #define MI_NO_XACT 0
- #define MI_EXPLICIT_XACT 1
- #define MI_IMPLICIT_XACT 2
- /*
- * Cast Status values set in mi_cast_get()
- */
- #define MI_NO_CAST 0
- #define MI_NOP_CAST 1
- #define MI_SYSTEM_CAST 2
- #define MI_UDR_CAST 3
- #define MI_EXPLICIT_CAST 4
- #define MI_IMPLICIT_CAST 5
- #define MI_ERROR_CAST 6
- /* Errors for ax_reg() */
- #define MI_INVALID_XANAME (mi_integer) -9265
- #define MI_NOTINTX (mi_integer) -9266
- #define MI_NOSUCH_XASOURCE (mi_integer) -9267
- #define MI_NOSUCH_XASRC_REGISTERED (mi_integer) -9268
- #define MI_XAOPEN_ERROR (mi_integer) -9269
- /*
- * Values for udr_type in mi_routine_get_by_typeid()
- */
- typedef enum mi_udr_type
- {
- MI_FUNC,
- MI_PROC
- } MI_UDR_TYPE;
- /* flag values for mi_dbcreate() */
- typedef enum mi_dbcreate_flags
- {
- MI_DBCREATE_DEFAULT,
- MI_DBCREATE_LOG,
- MI_DBCREATE_LOG_BUFFERED,
- MI_DBCREATE_LOG_ANSI
- } MI_DBCREATE_FLAGS;
- /*
- * Parameter types for function argument API
- */
- typedef enum mi_funcarg_type
- {
- MI_FUNCARG_COLUMN,
- MI_FUNCARG_CONSTANT,
- MI_FUNCARG_PARAM
- } MI_FUNCARG_TYPE;
- /*
- * option selectors for mi_get_connection_option()
- */
- /* True if current DB is an ANSI DB */
- #define MI_IS_ANSI_DB 1000
- /* True if current DB is in exclusive mode */
- #define MI_IS_EXCLUSIVE_DB 1001
- /* True if current DB is unlogged */
- #define MI_IS_LOGGED_DB 1002
- /* True if current DB is a system DB */
- #define MI_IS_SYSTEM_DB 1003
- /*
- * CloudSync specific flags
- */
- #define MI_CLOUDSYNC_CB1 0x00010000
- /*
- * options bitmasks
- */
- #define MI_CALLBACK_GENERIC 0x00000000
- #define MI_CALLBACK_LAST 0x00000001
- #define MI_CALLBACK_NODUPS 0x00000002
- #define MI_CALLBACK_IDMASK MI_CLOUDSYNC_CB1
- /*
- * Trigger Events.
- */
- #define MI_TRIGGER_NOT_IN_EVENT 0x0000
- #define MI_TRIGGER_INSERT_EVENT 0x0001
- #define MI_TRIGGER_DELETE_EVENT 0x0002
- #define MI_TRIGGER_UPDATE_EVENT 0x0004
- #define MI_TRIGGER_SELECT_EVENT 0x0008
- #define MI_TRIGGER_BEFORE_EVENT 0x0010
- #define MI_TRIGGER_AFTER_EVENT 0x0020
- #define MI_TRIGGER_FOREACH_EVENT 0x0040
- #define MI_TRIGGER_INSTEAD_EVENT 0x0080
- #define MI_TRIGGER_REMOTE_EVENT 0x0100
- /*
- * Option for mi_trigger_tabname.
- *
- */
- #define MI_TRIGGER_CURRENTTABLE 0x0000
- #define MI_TRIGGER_TOPTABLE 0x0001
- #define MI_TRIGGER_TABLENAME 0x0002
- #define MI_TRIGGER_OWNERNAME 0x0004
- #define MI_TRIGGER_DBASENAME 0x0008
- #define MI_TRIGGER_SERVERNAME 0x0010
- #define MI_TRIGGER_FULLNAME 0x0020
- /*
- * HDR states.
- */
- #define MI_HDR_ON 0x01
- #define MI_HDR_PRIMARY 0x02
- /*
- * Both MI_HDR_SECONDARY and MI_SECONDARY designate if the server is any kind
- * of secondary node. Prior to IDS 11.50 there was only one secondary type,
- * the HDR secondary.
- */
- #define MI_HDR_SECONDARY 0x04 /* for backwards compatibility */
- #define MI_SECONDARY 0x04 /* recommended over MI_HDR_SECONDARY */
- /*
- * MI_HDR_SEC_NODE designates if the server is exactly and only an HDR
- * secondary node (and not another secondary type node).
- */
- #define MI_HDR_SEC_NODE 0x08
- #define MI_RSS_SECONDARY 0x10
- #define MI_SDS_SECONDARY 0x20
- #define MI_UPDATABLE_SECONDARY 0x40
- /*
- * Data structures.
- */
- /* Type Information */
- typedef struct mi_type_desc MI_TYPE_DESC;
- #ifndef MI_TYPEID
- typedef struct mi_typeid MI_TYPEID;
- #endif /* MI_TYEPID */
- /* Variable Length Data Types */
- /* SQL types-expose lowercase structure names, all the rest-expose uppercase */
- typedef struct MI_BITVARYING mi_bitvarying;
- typedef struct MI_LVARCHAR mi_lvarchar;
- typedef struct MI_SENDRECV mi_sendrecv;
- typedef struct MI_IMPEXP mi_impexp;
- typedef struct MI_IMPEXPBIN mi_impexpbin;
- /* Rows, Columns and Composites and SaveSets */
- typedef struct mi_save_set MI_SAVE_SET;
- typedef struct mi_statement MI_STATEMENT;
- typedef struct mi_querydesc MI_QUERYDESC;
- typedef struct mi_error_desc MI_ERROR_DESC;
- typedef struct mi_callback_handle MI_CALLBACK_HANDLE;
- typedef struct mi_row MI_ROW;
- typedef struct mi_row_desc MI_ROW_DESC;
- /* MI_FPARAM, Function Descriptor and Callbacks */
- typedef struct mi_fp_typeinfo MI_FP_TYPEINFO;
- typedef mi_integer mi_funcid;
- typedef struct mi_func_desc MI_FUNC_DESC;
- typedef struct mi_fparam MI_FPARAM;
- /* MI_CONNECTION_INFO & MI_DATABASE_INFO */
- typedef struct mi_connection MI_CONNECTION;
- typedef struct mi_connection_info
- {
- char *server_name; /* INFORMIXSERVER */
- mi_integer server_port; /* SERVERNUM */
- char *locale; /* Processing locale */
- mi_integer reserved1; /* reserved for future */
- mi_integer reserved2; /* reserved for future */
- } MI_CONNECTION_INFO;
- typedef struct mi_database_info
- {
- char *database_name;
- char *user_name;
- char *password;
- } MI_DATABASE_INFO;
- /* Collections */
- typedef struct mi_collection MI_COLLECTION;
- typedef struct mi_coll_desc MI_COLL_DESC;
- /* Server Transition Descriptor */
- typedef struct mi_transition_desc MI_TRANSITION_DESC;
- /* Client only */
- typedef struct mi_parameter_info
- {
- mi_integer callbacks_enabled;
- mi_integer pointer_checks_enabled;
- } MI_PARAMETER_INFO;
- /* Selectivity */
- typedef struct mi_funcarg MI_FUNCARG;
- /*
- * Function Pointer Types
- */
- typedef void * (MI_PROC_VACALLBACK *MI_C_FUNC_PTR) ();
- typedef MI_CALLBACK_STATUS (MI_PROC_CALLBACK *MI_CALLBACK_FUNC)
- ARGS((MI_EVENT_TYPE type,
- MI_CONNECTION *conn,
- void *cb_data,
- void *user_data));
- /*
- * Public function prototypes.
- */
- EXTERNC_BEGIN
- /*
- * New routines for variable length data types
- */
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_new_var ARGS((mi_integer datalen));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_var_free ARGS((mi_lvarchar *varptr));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_varlen ARGS((mi_lvarchar *varptr));
- MI_DECL
- char * MI_PROC_EXPORT
- mi_get_vardata ARGS((mi_lvarchar *varptr));
- MI_DECL
- char * MI_PROC_EXPORT
- mi_get_vardata_align ARGS((mi_lvarchar *varptr,
- mi_integer align));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_varlen ARGS((mi_lvarchar *varptr,
- mi_integer datalen));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_vardata ARGS((mi_lvarchar *varptr,
- char *dataptr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_vardata_align ARGS((mi_lvarchar *varptr,
- char *dataptr,
- mi_integer align));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_varptr ARGS((mi_lvarchar *varptr,
- char *dataptr));
- /* add this function to fix the datablade related problems */
- MI_DECL
- mi_smallint MI_PROC_EXPORT
- mi_set_optcompind ARGS((mi_smallint optcompind));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_no_langcheck ARGS((void));
- MI_DECL
- void MI_PROC_EXPORT
- mi_unset_no_langcheck ARGS((void));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_no_logmodecheck ARGS((mi_integer duration));
- MI_DECL
- void MI_PROC_EXPORT
- mi_unset_no_logmodecheck ARGS((mi_integer duration));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_ses_explsql ARGS((void));
- MI_DECL
- void MI_PROC_EXPORT
- mi_unset_ses_explsql ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_check_remote_version ARGS((mi_char1 required));
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_var_copy ARGS((mi_lvarchar *lv));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_lvarchar_to_string ARGS((mi_lvarchar *lv));
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_string_to_lvarchar ARGS((mi_string *str));
- MI_DECL
- void MI_PROC_EXPORT
- mi_var_to_buffer ARGS((mi_lvarchar *varptr,
- char *buffer));
- /*
- * Converting and Copying (server only)
- */
- MI_DECL
- mi_unsigned_integer MI_PROC_EXPORT
- mi_fix_integer ARGS((mi_unsigned_integer val));
- MI_DECL
- mi_unsigned_integer MI_PROC_EXPORT
- mi_fix_smallint ARGS((mi_unsigned_integer val));
- /*
- * Get and put byte routines
- */
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_bytes ARGS((mi_unsigned_char1 *iodata,
- char *valp,
- mi_integer nbytes));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_bytes ARGS((mi_unsigned_char1 *iodata,
- char *valp,
- mi_integer nbytes));
- /*
- * Get/put routines for standard datatypes
- */
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_double_precision ARGS((mi_unsigned_char1 *datap,
- mi_double_precision *valp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_double_precision ARGS((mi_unsigned_char1 *datap,
- mi_double_precision *valp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_real ARGS((mi_unsigned_char1 *datap,
- mi_real *mi_realp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_real ARGS((mi_unsigned_char1 *datap,
- mi_real *mi_realval));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_integer ARGS((mi_unsigned_char1 *datap,
- mi_integer *mi_integerp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_integer ARGS((mi_unsigned_char1 *datap,
- mi_integer mi_integerval));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_smallint ARGS((mi_unsigned_char1 *datap,
- mi_smallint *smallintp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_smallint ARGS((mi_unsigned_char1 *datap,
- mi_integer smallintval));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_date ARGS((mi_unsigned_char1 *datap,
- mi_date *datep));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_date ARGS((mi_unsigned_char1 *datap,
- mi_date *datep));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_int8 ARGS((mi_unsigned_char1 *datap,
- mi_int8 *int8p));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_int8 ARGS((mi_unsigned_char1 *datap,
- mi_int8 *int8p));
- #ifndef NOBIGINT
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_bigint ARGS((mi_unsigned_char1 *datap,
- mi_bigint *bintp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_bigint ARGS((mi_unsigned_char1 *datap,
- mi_bigint *bintp));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_last_bigserial ARGS((MI_CONNECTION *conn, mi_bigint *out));
- MI_DECL
- mi_unsigned_bigint MI_PROC_EXPORT
- mi_fix_bigint ARGS((mi_unsigned_bigint val));
- #endif
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_datetime ARGS((mi_unsigned_char1 *datap,
- mi_datetime *dtp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_datetime ARGS((mi_unsigned_char1 *datap,
- mi_datetime *dtp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_interval ARGS((mi_unsigned_char1 *datap,
- mi_interval *ip));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_interval ARGS((mi_unsigned_char1 *datap,
- mi_interval *ip));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_money ARGS((mi_unsigned_char1 *datap,
- mi_money *moneyp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_money ARGS((mi_unsigned_char1 *datap,
- mi_money *moneyp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_decimal ARGS((mi_unsigned_char1 *datap,
- mi_decimal *decimalp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_decimal ARGS((mi_unsigned_char1 *datap,
- mi_decimal *decimalp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_ref ARGS((mi_unsigned_char1 *datap,
- mi_ref *refp));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_ref ARGS((mi_unsigned_char1 *datap,
- mi_ref *refp));
- /*
- * Get/put string functions
- */
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_string ARGS((mi_unsigned_char1 *datap,
- mi_string **stringp,
- mi_integer srcbytes));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_string ARGS((mi_unsigned_char1 **datap,
- mi_string *valp,
- mi_integer srcbytes));
- /*
- * Old and deprecated Code conversion functions
- */
- MI_DECL
- mi_date MI_PROC_EXPORT
- mi_date_to_binary ARGS((mi_lvarchar *date_string));
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_binary_to_date ARGS((mi_date date_data));
- MI_DECL
- mi_datetime * MI_PROC_EXPORT
- mi_datetime_to_binary ARGS((mi_lvarchar *dttime));
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_binary_to_datetime ARGS((mi_datetime *dttime));
- MI_DECL
- mi_money * MI_PROC_EXPORT
- mi_money_to_binary ARGS((mi_lvarchar *money_string));
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_binary_to_money ARGS((mi_money *money_data));
- MI_DECL
- mi_decimal * MI_PROC_EXPORT
- mi_decimal_to_binary ARGS((mi_lvarchar *decimal_string));
- MI_DECL
- mi_lvarchar * MI_PROC_EXPORT
- mi_binary_to_decimal ARGS((mi_decimal *decimal_data));
- /*
- * New Code conversion functions
- */
- MI_DECL
- mi_date MI_PROC_EXPORT
- mi_string_to_date ARGS((mi_string *date_string));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_date_to_string ARGS((mi_date date_data));
- MI_DECL
- mi_datetime * MI_PROC_EXPORT
- mi_string_to_datetime ARGS((mi_string *datetime_string, mi_string *tynm));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_datetime_to_string ARGS((mi_datetime *dttime));
- MI_DECL
- mi_money * MI_PROC_EXPORT
- mi_string_to_money ARGS((mi_string *money_string));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_money_to_string ARGS((mi_money *money_data));
- MI_DECL
- mi_decimal * MI_PROC_EXPORT
- mi_string_to_decimal ARGS((mi_string *decimal_string));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_decimal_to_string ARGS((mi_decimal *decimal_data));
- MI_DECL
- mi_interval * MI_PROC_EXPORT
- mi_string_to_interval ARGS((mi_string *interval_string, mi_string *tynm));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_interval_to_string ARGS((mi_interval *intime));
- /*
- * Function prototypes for type information
- */
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_builtin ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_complex ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_row ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_list ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_multiset ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_set ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_collection ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_reference ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_distinct ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_userUDT ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_is_constructor ARGS((MI_TYPEID *typeptr));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_type_typename ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_type_owner ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_type_full_name ARGS((MI_TYPE_DESC *td));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_type_element_typedesc ARGS((MI_TYPE_DESC *td));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_type_constructor_typedesc ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_type_align ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_type_byvalue ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_type_length ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_type_maxlength ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_type_scale ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_type_precision ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_type_qualifier ARGS((MI_TYPE_DESC *td));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_get_type_source_type ARGS((MI_TYPE_DESC *td));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_typeid_equals ARGS((MI_TYPEID *typeone, MI_TYPEID *typetwo));
- /* Fetch a typeid from a null terminated string or an lvarchar
- * and get a type descriptor from an id
- */
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_typename_to_id ARGS((MI_CONNECTION *conn,
- mi_lvarchar *name));
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_typestring_to_id ARGS((MI_CONNECTION *conn,
- mi_string *name));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_typename_to_typedesc ARGS((MI_CONNECTION *conn,
- mi_lvarchar *name));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_typestring_to_typedesc ARGS((MI_CONNECTION *conn,
- mi_string *name));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_type_typedesc ARGS((MI_CONNECTION *conn, MI_TYPEID *tid));
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_typedesc_typeid ARGS((MI_TYPE_DESC *tdesc));
- /*
- * Prototypes for MI_FUNC_DESC accessor functions
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_func_handlesnulls ARGS((MI_FUNC_DESC *func_desc));
- MI_DECL
- char * MI_PROC_EXPORT
- mi_func_commutator ARGS((MI_FUNC_DESC *func_desc));
- MI_DECL
- char * MI_PROC_EXPORT
- mi_func_negator ARGS((MI_FUNC_DESC *func_desc));
- /*
- * Its a Server Only function
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_func_isvariant ARGS((MI_FUNC_DESC *func_desc));
- /*
- * Prototypes for MI_FPARAM accessor functions
- */
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_fp_usr_fparam ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_fp_funcstate ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setfuncstate ARGS((MI_FPARAM *fparamPtr,
- void *value));
- MI_DECL
- MI_SETREQUEST MI_PROC_EXPORT
- mi_fp_request ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_nrets ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setnrets ARGS((MI_FPARAM *fparamPtr,
- mi_integer value));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_fp_returnisnull ARGS((MI_FPARAM *fparamPtr, mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setreturnisnull ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer value));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setisdone ARGS((MI_FPARAM *fparamPtr,
- mi_integer value));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_nargs ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setnargs ARGS((MI_FPARAM *fparamPtr,
- mi_integer value));
- MI_DECL
- mi_unsigned_char1 MI_PROC_EXPORT
- mi_fp_argisnull ARGS((MI_FPARAM *fparamPtr,
- mi_integer arg));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setargisnull ARGS((MI_FPARAM *fparamPtr,
- mi_integer arg,
- mi_integer value));
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_fp_argtype ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setargtype ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- MI_TYPEID *type_id));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_arglen ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setarglen ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer len));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_argprec ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setargprec ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer prec));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_argscale ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setargscale ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer scale));
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_fp_rettype ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setrettype ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- MI_TYPEID *type_id));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_retlen ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setretlen ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer len));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_retprec ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setretprec ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer prec));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_retscale ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setretscale ARGS((MI_FPARAM *fparamPtr,
- mi_integer nth,
- mi_integer scale));
- MI_DECL
- mi_funcid MI_PROC_EXPORT
- mi_fp_getfuncid ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setfuncid ARGS((MI_FPARAM *fparamPtr,
- mi_funcid func));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fp_getcolid ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setcolid ARGS((MI_FPARAM *fparamPtr,
- mi_integer value));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_fp_getrow ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_fp_setrow ARGS((MI_FPARAM *fparamPtr,
- MI_ROW *row));
- /*
- * Create (and free) a row based on the row descriptor and data info.
- */
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_row_create ARGS((MI_CONNECTION *conn,
- MI_ROW_DESC *rowdesc,
- MI_DATUM coldata[],
- mi_boolean colisnull[]));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_row_free ARGS((MI_ROW *row));
- /*
- * Create (and free) a row descriptor, based on the row type information.
- */
- MI_DECL
- MI_ROW_DESC * MI_PROC_EXPORT
- mi_row_desc_create ARGS((MI_TYPEID *type_id));
- MI_DECL
- void MI_PROC_EXPORT
- mi_row_desc_free ARGS((MI_ROW_DESC *rowdesc));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_next_row ARGS((MI_CONNECTION *conn,
- mi_integer *error));
- MI_DECL
- mint MI_PROC_EXPORT
- mi_set_row_desc_duration ARGS((MI_ROW *row,
- MI_MEMORY_DURATION duration));
- /*
- * Fetch the row descriptor based on the row or the current row
- * in the specified connection.
- */
- MI_DECL
- MI_ROW_DESC * MI_PROC_EXPORT
- mi_get_row_desc ARGS((MI_ROW *row));
- MI_DECL
- MI_ROW_DESC * MI_PROC_EXPORT
- mi_get_row_desc_without_row ARGS((MI_CONNECTION *conn));
- MI_DECL
- MI_ROW_DESC *
- mi_get_row_desc_from_type_desc ARGS((MI_TYPE_DESC *type_desc_Ptr));
- /*
- * Get column information by number or name.
- */
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_column_name ARGS((MI_ROW_DESC *idesc,
- mi_integer value_no));
- MI_DECL
- MI_TYPE_DESC * MI_PROC_EXPORT
- mi_column_typedesc ARGS((MI_ROW_DESC *rd,
- mi_integer colno));
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_column_type_id ARGS((MI_ROW_DESC *idesc,
- mi_integer value_no));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_count ARGS((MI_ROW_DESC *idesc));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_id ARGS((MI_ROW_DESC *idesc,
- mi_string *colname));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_value ARGS((MI_ROW *row,
- mi_integer column_no,
- MI_DATUM *retbuf,
- mi_integer *retlen));
- /* Same as mi_value() but uses column name */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_value_by_name ARGS((MI_ROW *row,
- char *column_name,
- MI_DATUM *retbuf,
- mi_integer *retlen));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_value_length ARGS((MI_ROW *row,
- mi_integer value_no));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_precision ARGS((MI_ROW_DESC *idesc,
- mi_integer value_no));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_nullable ARGS((MI_ROW_DESC *idesc,
- mi_integer value_no));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_scale ARGS((MI_ROW_DESC *idesc,
- mi_integer value_no));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_default ARGS((MI_ROW_DESC *row_desc,
- mi_integer column_no,
- MI_DATUM *default_val));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_column_default_string ARGS((MI_ROW_DESC *row_desc,
- mi_integer column_no,
- mi_string **default_val));
- /*
- * Data Handling Routines - Parameters and Environment
- */
- MI_DECL
- char * MI_PROC_EXPORT
- mi_sysname ARGS((char *name));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_connection_info ARGS((MI_CONNECTION *conn,
- MI_CONNECTION_INFO *ret));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_connection_user_data ARGS((MI_CONNECTION *conn,
- void **user_data));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_database_info ARGS((MI_CONNECTION *conn,
- MI_DATABASE_INFO *ret));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_default_connection_info ARGS((MI_CONNECTION_INFO *ret));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_default_database_info ARGS((MI_DATABASE_INFO *ret));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_parameter_info ARGS((MI_PARAMETER_INFO *ret));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_set_connection_user_data ARGS((MI_CONNECTION *conn,
- void *conn_info));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_set_default_connection_info ARGS((MI_CONNECTION_INFO *cinfo));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_set_default_database_info ARGS((MI_DATABASE_INFO *dinfo));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_set_parameter_info ARGS((const MI_PARAMETER_INFO *set));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_connection_option ARGS((MI_CONNECTION *conn,
- const mi_integer which_option,
- mi_integer *result));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_serverenv ARGS((const char *name, char **value));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_server_version ARGS((MI_CONNECTION *conn, char *buf, mi_integer buflen));
- /*
- * Prototypes for collections
- */
- /* open */
- MI_DECL
- MI_COLL_DESC * MI_PROC_EXPORT
- mi_collection_open ARGS((MI_CONNECTION *conn,
- MI_COLLECTION *coll));
- /* open with options */
- MI_DECL
- MI_COLL_DESC * MI_PROC_EXPORT
- mi_collection_open_with_options ARGS((MI_CONNECTION *conn,
- MI_COLLECTION *coll,
- mi_integer flags));
- /* Possible values for flags */
- #define MI_COLL_NOSCROLL 0x1
- #define MI_COLL_READONLY 0x2
- /* flags for MI_CONNECTION.conn_flags */
- #define MI_CONN_TD_BOUND 0x1 /* indicate that the conn is embedded
- in a table descriptor. It and all its
- sub-structures must have at least the
- same lifespan */
- /* close */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_close ARGS((MI_CONNECTION *conn,
- MI_COLL_DESC *colldesc));
- /* create */
- MI_DECL
- MI_COLLECTION * MI_PROC_EXPORT
- mi_collection_create ARGS((MI_CONNECTION *conn,
- MI_TYPEID *type_id));
- /* free */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_free ARGS((MI_CONNECTION *conn,
- MI_COLLECTION *coll));
- /* copy */
- MI_DECL
- MI_COLLECTION * MI_PROC_EXPORT
- mi_collection_copy ARGS((MI_CONNECTION *conn,
- MI_COLLECTION *from));
- /* fetch */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_fetch ARGS((MI_CONNECTION *conn,
- MI_COLL_DESC *colldesc,
- MI_CURSOR_ACTION action,
- mi_integer jump,
- MI_DATUM *retbuf,
- mi_integer *ret_len));
- /* insert */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_insert ARGS(( MI_CONNECTION *conn,
- MI_COLL_DESC *colldesc,
- MI_DATUM val,
- MI_CURSOR_ACTION action,
- mi_integer jump));
- /* delete */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_delete ARGS((MI_CONNECTION *conn,
- MI_COLL_DESC *colldesc,
- MI_CURSOR_ACTION action,
- mi_integer jump));
- /* update */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_update ARGS((MI_CONNECTION *conn,
- MI_COLL_DESC *colldesc,
- MI_DATUM val,
- MI_CURSOR_ACTION action,
- mi_integer jump));
- /* cardinality */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_collection_card ARGS((MI_COLLECTION *coll,
- mi_boolean *isnull));
- /*
- * Functions for conversion to and from a codeset for any locale specific
- * DataBlades
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_convert_to_codeset ARGS((char *string,
- char *locale_name));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_convert_from_codeset ARGS((char *string,
- char *locale_name));
- /*
- * Miscellaneous functions
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_library_version ARGS((char *buf,
- mi_integer buflen));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_get_client_home ARGS((char *client_home_path,
- mi_integer client_home_path_length));
- MI_DECL
- char * MI_PROC_EXPORT
- mi_client_locale ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_next_sysname ARGS((mi_integer *phandle, char *nameb,
- mi_integer namebsize));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_dbnames ARGS((MI_CONNECTION *conn,
- char *dbnameps[], mi_integer dbnamepssize,
- char *dbnamesb, mi_integer dbnamesbsize));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_transaction_state ARGS((void));
- /*
- * Memory management
- */
- MI_DECL
- MI_MEMORY_DURATION MI_PROC_EXPORT
- mi_switch_mem_duration ARGS((MI_MEMORY_DURATION duration));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_duration_size ARGS((MI_MEMORY_DURATION duration));
- MI_DECL
- MI_MEMORY_DURATION MI_PROC_EXPORT
- mi_get_memptr_duration ARGS((void * memptr));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_alloc ARGS((mi_integer len));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_realloc ARGS((void *ptr, mi_integer size));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_stack_limit ARGS((mi_integer size));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_dalloc ARGS((mi_integer len,
- MI_MEMORY_DURATION duration));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_zalloc ARGS((mi_integer len));
- MI_DECL
- void MI_PROC_EXPORT
- mi_free ARGS((void *ptr));
- MI_DECL
- void MI_PROC_EXPORT
- mi_set_conn_flags ARGS((MI_CONNECTION *conn, mi_integer flags));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_conn_flags ARGS((MI_CONNECTION *conn, mi_integer flags));
- /*
- * Client specific Routines
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_init_library ARGS((mi_integer flags));
- MI_DECL
- MI_CONNECTION * MI_PROC_EXPORT
- mi_server_connect ARGS((MI_CONNECTION_INFO *conn_info));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_login ARGS((MI_CONNECTION *conn,
- const MI_DATABASE_INFO *dobbin));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_dbcreate ARGS((MI_CONNECTION *conn,
- const MI_DATABASE_INFO *dbinfo,
- const char *dbspace,
- MI_DBCREATE_FLAGS flag));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_dbdrop ARGS((MI_CONNECTION *conn, const MI_DATABASE_INFO *dbinfo));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_server_reconnect ARGS((MI_CONNECTION *conn));
- MI_DECL
- void MI_PROC_EXPORT
- mi_cleanup ARGS((void));
- MI_DECL
- MI_ASYNC_ACTION MI_PROC_EXPORT
- mi_processing_needed ARGS((MI_CONNECTION *miconn,
- mi_integer flags));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_event_pending ARGS((MI_CONNECTION *miconn));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_unix_connection ARGS((MI_CONNECTION *miconn));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_client ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_register_function ARGS((MI_CONNECTION *conn,
- MI_FUNCTYPE functype,
- MI_C_FUNC_PTR func,
- const mi_string *fsqlname,
- const mi_string *functag,
- mi_integer nargs,
- mi_string *typenamearray[]));
- /*
- * Session, Thread, and Transaction Management
- */
- MI_DECL
- MI_CONNECTION * MI_PROC_EXPORT
- mi_open ARGS((const char *database_name,
- const char *user_name,
- const char *user_passwd));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_close ARGS((MI_CONNECTION *conn));
- /* For multi threaded environment - yield processing to other threads and
- reschedule */
- MI_DECL
- void MI_PROC_EXPORT
- mi_yield ARGS((void));
- /* Expose mt_call routine */
- MI_DECL
- mi_integer MI_PROC_VAEXPORT
- mi_call ARGS ((mi_integer *retval,
- mi_integer (*func)(),
- mi_integer nargs,
- ...));
- /* Expose mt_call_size routine */
- MI_DECL
- mi_integer MI_PROC_VAEXPORT
- mi_call_size ARGS ((mulong stack_size,
- mulong *retval,
- muintptr (*func)(void),
- mi_integer nargs,
- ...));
- /* check for user interrupt */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_interrupt_check ARGS((void));
- /* server state transitions */
- MI_DECL
- MI_TRANSITION_TYPE MI_PROC_EXPORT
- mi_transition_type ARGS((MI_TRANSITION_DESC *data));
- /*
- * Query Processing
- */
- /* Parameterized queries and cursors */
- MI_DECL
- MI_STATEMENT * MI_PROC_EXPORT
- mi_prepare ARGS((MI_CONNECTION *conn_desc,
- mi_string *query,
- mi_string *name));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_exec_prepared_statement ARGS((MI_STATEMENT *stmtptr,
- mi_integer control,
- mi_integer are_binary,
- mi_integer n_params,
- MI_DATUM values[],
- mi_integer lengths[],
- mi_integer nulls[],
- mi_string *types[],
- mi_integer retlen,
- mi_string *rettypes[]));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_open_prepared_statement ARGS((MI_STATEMENT *stmt,
- mi_integer control,
- mi_integer are_binary,
- mi_integer n_params,
- MI_DATUM values[],
- mi_integer lengths[],
- mi_integer nulls[],
- mi_string *types[],
- mi_string *name,
- mi_integer retlen,
- mi_string *rettypes[]));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fetch_statement ARGS((MI_STATEMENT *stmtptr,
- MI_CURSOR_ACTION orient,
- mi_integer jump,
- mi_integer count));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_close_statement ARGS((MI_STATEMENT *stmtPtr));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_recycle_statement ARGS((MI_STATEMENT *stmtPtr));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_reset_statement ARGS((MI_STATEMENT *stmtPtr));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_drop_prepared_statement ARGS((MI_STATEMENT *stmtPtr));
- MI_DECL
- MI_ROW_DESC * MI_PROC_EXPORT
- mi_get_statement_row_desc ARGS((MI_STATEMENT *stmtPtr));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_parameter_count ARGS((MI_STATEMENT *stmtPtr));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_parameter_type_name ARGS((MI_STATEMENT *stmtPtr,
- mi_integer paramNo));
- MI_DECL
- MI_TYPEID * MI_PROC_EXPORT
- mi_parameter_type_id ARGS((MI_STATEMENT *stmtPtr,
- mi_integer paramNo));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_parameter_precision ARGS((MI_STATEMENT *stmtPtr,
- mi_integer paramNo));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_parameter_scale ARGS((MI_STATEMENT *stmtPtr,
- mi_integer paramNo));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_parameter_nullable ARGS((MI_STATEMENT *stmtPtr,
- mi_integer paramNo));
- /* Sending Commands */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_exec ARGS((MI_CONNECTION *conn,
- const mi_string *command,
- mi_integer control));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_query_finish ARGS((MI_CONNECTION *conn));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_query_interrupt ARGS((MI_CONNECTION *conn,
- mi_integer block_until_acknowledged));
- /* Information about the current command */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_binary_query ARGS((MI_CONNECTION *conn));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_command_is_finished ARGS((MI_CONNECTION *conn));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_current_command_name ARGS((MI_CONNECTION *conn));
- /* General information about the results */
- MI_DECL
- char * MI_PROC_EXPORT
- mi_result_command_name ARGS((MI_CONNECTION *conn));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_statement_command_name ARGS((MI_STATEMENT *stmt));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_result ARGS((MI_CONNECTION *conn));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_result_row_count ARGS((MI_CONNECTION *conn));
- /* return SERIAL of latest insert */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_last_serial ARGS((MI_CONNECTION *conn, mi_integer *out));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_last_serial8 ARGS((MI_CONNECTION *conn, mi_int8 *out));
- /*
- * Savesets
- */
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_save_set_get_first ARGS((MI_SAVE_SET *save_set,
- mi_integer *error));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_save_set_get_last ARGS((MI_SAVE_SET *save_set,
- mi_integer *error));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_save_set_get_next ARGS((MI_SAVE_SET *save_set,
- mi_integer *error));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_save_set_get_previous ARGS((MI_SAVE_SET *save_set,
- mi_integer *error));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_save_set_insert ARGS((MI_SAVE_SET *save_set,
- MI_ROW *row));
- MI_DECL
- MI_SAVE_SET * MI_PROC_EXPORT
- mi_save_set_create ARGS((MI_CONNECTION *conn));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_save_set_count ARGS((MI_SAVE_SET *save_set));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_save_set_delete ARGS((MI_ROW *row));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_save_set_destroy ARGS((MI_SAVE_SET *save_set));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_save_set_member ARGS((MI_ROW *row));
- /*
- * Get id (currently for session and statement)
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_id ARGS((MI_CONNECTION *conn_desc, MI_ID id));
- MI_DECL
- mi_char* MI_PROC_EXPORT
- mi_get_db_locale ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_get_transaction_id ARGS((void));
- /*
- * Error and exception handling
- */
- MI_DECL
- MI_ERROR_DESC * MI_PROC_EXPORT
- mi_error_desc_copy ARGS((MI_ERROR_DESC *source));
- MI_DECL
- MI_CALLBACK_HANDLE * MI_PROC_EXPORT
- mi_register_callback_with_options ARGS((MI_CONNECTION *conn,
- MI_EVENT_TYPE event_type,
- MI_CALLBACK_FUNC func,
- void *user_data,
- MI_CALLBACK_HANDLE *parent,
- mi_integer flags));
- MI_DECL
- MI_CALLBACK_HANDLE * MI_PROC_EXPORT
- mi_register_callback ARGS((MI_CONNECTION *conn,
- MI_EVENT_TYPE event_type,
- MI_CALLBACK_FUNC func,
- void *user_data,
- MI_CALLBACK_HANDLE *parent));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_retrieve_callback ARGS((MI_CONNECTION *conn,
- MI_EVENT_TYPE event_type,
- MI_CALLBACK_HANDLE *handle,
- MI_CALLBACK_FUNC *retfunc,
- void **ret_user_data));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_unregister_callback ARGS((MI_CONNECTION *conn,
- MI_EVENT_TYPE event_type,
- MI_CALLBACK_HANDLE *handle));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_disable_callback ARGS((MI_CONNECTION *conn,
- MI_EVENT_TYPE event_type,
- MI_CALLBACK_HANDLE *handle));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_disable_callbacks ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_enable_callback ARGS((MI_CONNECTION *conn,
- MI_EVENT_TYPE event_type,
- MI_CALLBACK_HANDLE *handle));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_enable_callbacks ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_error_desc_destroy ARGS((MI_ERROR_DESC *desc));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_error_desc_is_copy ARGS((MI_ERROR_DESC *desc));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_error_level ARGS((MI_ERROR_DESC *estruct));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_error_sqlcode ARGS((MI_ERROR_DESC *desc,
- mi_integer *sqlcodep));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_error_sql_state ARGS((MI_ERROR_DESC *desc,
- char *buf,
- mi_integer buflen));
- MI_DECL
- mi_integer MI_PROC_VAEXPORT
- mi_db_error_raise ARGS((MI_CONNECTION *conn,
- mi_integer msg_type,
- char *msg,
- ...));
- MI_DECL
- mi_integer MI_PROC_VAEXPORT
- mi_exception_raise ARGS((MI_CONNECTION *conn,
- mi_integer sqlcode,
- mi_integer isamcode,
- char *msg
- ));
- MI_DECL
- mi_integer MI_PROC_VAEXPORT
- mi_vti_error_raise ARGS((MI_CONNECTION *conn,
- mi_integer sqlcode,
- mi_integer isamcode
- ));
- MI_DECL
- void MI_PROC_EXPORT
- mi_default_callback ARGS((MI_EVENT_TYPE type,
- MI_CONNECTION *conn,
- void *cb_data,
- void *user_data));
- MI_DECL
- void MI_PROC_EXPORT
- mi_errmsg ARGS((MI_ERROR_DESC *desc,
- char *buf,
- mi_integer buflen));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_error_desc_finish ARGS((MI_ERROR_DESC *desc));
- MI_DECL
- MI_ERROR_DESC * MI_PROC_EXPORT
- mi_error_desc_next ARGS((MI_ERROR_DESC *desc));
- /*
- * Special secret interfaces for internal development
- * Use at your own risk.
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_funcmap_get ARGS((MI_FUNC_DESC *fdesc, void **mhandle, void **fhandle));
- MI_DECL
- MI_C_FUNC_PTR MI_PROC_EXPORT
- mi_funcaddr_get ARGS((void *mhandle, void *fhandle));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_funcaddr_release ARGS((void *mhandle, void *fhandle));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_disable_sql_logical_char_db ARGS((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_enable_sql_logical_char_db ARGS((mi_integer opt));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_task_process_request ARGS((char *tk_p_name, char *tk_p_args));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_async_task_process_request ARGS((char *tk_p_name, char *tk_p_args));
- /*
- * Operating System File Interface
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_allocate ARGS((mi_integer n));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_open ARGS((const char *name,
- mi_integer flags,
- mi_integer mode));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_errno(void);
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_read ARGS((mi_integer fd,
- char *buf,
- mi_integer amnt));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_seek ARGS((mi_integer fd,
- mi_integer offset,
- mi_integer whence));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_seek8 ARGS((mi_integer fd,
- mi_int8 *offset8,
- mi_int8 *newpos8,
- mi_integer whence));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_sync ARGS((mi_integer fd));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_tell ARGS((mi_integer fd));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_tell8 ARGS((mi_integer fd,
- mi_int8 *tellpos8));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_unlink ARGS((mi_integer fd));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_file_write ARGS((mi_integer fd,
- const char *buf,
- mi_integer amnt));
- MI_DECL
- void MI_PROC_EXPORT
- mi_file_close ARGS((mi_integer fd));
- /*
- * Fastpath
- */
- MI_DECL
- MI_DATUM MI_PROC_VAEXPORT
- mi_routine_exec ARGS((MI_CONNECTION *conn,
- MI_FUNC_DESC *fdesc,
- mi_integer *error,
- ...));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_routine_end ARGS((MI_CONNECTION *conn,
- MI_FUNC_DESC *fdesc));
- MI_DECL
- MI_FUNC_DESC * MI_PROC_EXPORT
- mi_routine_get ARGS((MI_CONNECTION *conn,
- mi_integer flags,
- char *sig));
- MI_DECL
- MI_FUNC_DESC * MI_PROC_EXPORT
- mi_routine_get_by_db_typeid ARGS((MI_CONNECTION *conn,
- char *dbname,
- MI_UDR_TYPE udr_type,
- char *udr_name,
- char *owner,
- mi_integer arg_count,
- MI_TYPEID *arg_types));
- MI_DECL
- MI_FUNC_DESC * MI_PROC_EXPORT
- mi_routine_get_by_typeid ARGS((MI_CONNECTION *conn,
- MI_UDR_TYPE udr_type,
- char *udr_name,
- char *owner,
- mi_integer arg_count,
- MI_TYPEID *arg_types));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_routine_id_get ARGS((MI_CONNECTION *conn,
- MI_FUNC_DESC *func_desc));
- MI_DECL
- MI_FUNC_DESC * MI_PROC_EXPORT
- mi_func_desc_by_typeid ARGS((MI_CONNECTION *conn,
- mi_funcid routine_id));
- MI_DECL
- MI_FUNC_DESC * MI_PROC_EXPORT
- mi_cast_get ARGS((MI_CONNECTION *conn,
- MI_TYPEID *from_type,
- MI_TYPEID *to_type,
- mi_char *cast_status));
- MI_DECL
- MI_FUNC_DESC * MI_PROC_EXPORT
- mi_td_cast_get ARGS((MI_CONNECTION *conn,
- MI_TYPE_DESC *from_tdesc,
- MI_TYPE_DESC *to_tdesc,
- mi_char *cast_status));
- MI_DECL
- MI_FPARAM * MI_PROC_EXPORT
- mi_fparam_get ARGS((MI_CONNECTION *conn,
- MI_FUNC_DESC *func_desc));
- MI_DECL
- MI_FPARAM * MI_PROC_EXPORT
- mi_fparam_get_current ARGS((void));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_fp_funcname ARGS((MI_FPARAM *fparamPtr));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_get_type ARGS((mi_unsigned_char1 *dataPtr, MI_TYPEID *typePtr));
- MI_DECL
- mi_unsigned_char1 * MI_PROC_EXPORT
- mi_put_type ARGS((mi_unsigned_char1 *dataPtr, MI_TYPEID *typePtr));
- /*
- * MI_FPARAM allocating, copying, and freeing routines
- */
- MI_DECL
- MI_FPARAM * MI_PROC_EXPORT
- mi_fparam_allocate ARGS((mi_integer nargs));
- MI_DECL
- MI_FPARAM * MI_PROC_EXPORT
- mi_fparam_copy ARGS((MI_FPARAM *fp_in));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_fparam_free ARGS((MI_FPARAM *fp));
- /*
- * Routines for function argument API.
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_funcarg_get_routine_id ARGS((MI_FUNCARG *fa));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_funcarg_get_routine_name ARGS((MI_FUNCARG *fa));
- MI_DECL
- MI_FUNCARG_TYPE MI_PROC_EXPORT
- mi_funcarg_get_argtype ARGS((MI_FUNCARG *fa));
- MI_DECL
- MI_TYPEID *MI_PROC_EXPORT
- mi_funcarg_get_datatype ARGS((MI_FUNCARG *fa));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_funcarg_get_datalen ARGS((MI_FUNCARG *fa));
- MI_DECL
- mi_boolean MI_PROC_EXPORT
- mi_funcarg_isnull ARGS((MI_FUNCARG *fa));
- MI_DECL
- MI_DATUM MI_PROC_EXPORT
- mi_funcarg_get_constant ARGS((MI_FUNCARG *fa));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_funcarg_get_tabid ARGS((MI_FUNCARG *fa));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_funcarg_get_colno ARGS((MI_FUNCARG *fa));
- MI_DECL
- mi_bitvarying * MI_PROC_EXPORT
- mi_funcarg_get_distrib ARGS((MI_FUNCARG *fa));
- /* dlopen wrapper prototypes */
- MI_DECL
- void * MI_PROC_EXPORT
- mi_so_load ARGS((char *name, char *vpclass ));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_so_handle ARGS(( char *name ));
- MI_DECL
- void MI_PROC_EXPORT
- mi_so_unload ARGS(( void *mhandle ));
- MI_DECL
- void * MI_PROC_EXPORT
- mi_so_symbol ARGS(( void *mhandle, char *symbol ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_udr_lock ARGS(( mi_integer action ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_vpinfo_vpid ARGS ((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_vpinfo_classid ARGS ((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_vpinfo_isnoyield ARGS ((void));
- MI_DECL
- const char * MI_PROC_EXPORT
- mi_class_name ARGS ((mi_integer classid));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_class_id ARGS ((const char * classname));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_class_maxvps ARGS ((mi_integer classid, mi_integer * error));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_class_numvp ARGS ((mi_integer classid));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_call_on_vp ARGS (( mi_integer vpid, mi_integer *retval,
- mi_integer (*func)(), mi_integer nargs, ... ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_switch_vpid ARGS (( mi_integer vpid));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_process_exec ARGS (( char* argv[] ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_system ARGS ((const mi_char* cmd));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_module_lock ARGS(( mi_integer action ));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_trigger_tabname ARGS ((mi_integer flags));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_trigger_event ARGS ((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_trigger_level ARGS ((void));
- MI_DECL
- mi_string * MI_PROC_EXPORT
- mi_trigger_name ARGS ((void));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_trigger_get_old_row ARGS ((void));
- MI_DECL
- MI_ROW * MI_PROC_EXPORT
- mi_trigger_get_new_row ARGS ((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_hdr_status ARGS ((void));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_hdr_exefunc ARGS((MI_CONNECTION *conn,
- mi_char *func_name,
- mi_char *data));
- /*
- * Prototype for stack estimation function
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_print_stack(void);
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_xa_register_xadatasource ARGS ((mi_string *));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_xa_unregister_xadatasource ARGS ((mi_string *));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_xa_get_xadatasource_rmid ARGS ((mi_string *));
- MI_DECL
- XID * MI_PROC_EXPORT
- mi_xa_get_current_xid ARGS ((void));
- MI_DECL
- int MI_PROC_EXPORT
- ax_reg ARGS ((int rmid, XID *xid, int4 flags));
- MI_DECL
- int MI_PROC_EXPORT
- ax_unreg ARGS ((int rmid, int4 flags));
- MI_DECL
- mi_integer MI_PROC_VAEXPORT
- mi_sql_error_raise(MI_CONNECTION *conn, mi_integer sqlcode, const char *msg);
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_datetime_compare ARGS ((mi_datetime *dtime1, mi_datetime *dtime2,
- mi_integer *retval));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_interval_compare ARGS ((mi_interval *inv1, mi_interval *inv2,
- mi_integer *retval));
- /*
- * Prototype for AQT handling
- */
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_aqt_register
- ARGS ((
- MI_CONNECTION *conn,
- const char * owner,
- const char * tabname,
- const char * accelerator_instance,
- const char * accelerator_datamart
- ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_aqt_setVirtual
- ARGS ((
- MI_CONNECTION *conn,
- const char * owner,
- const char * tabname
- ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_aqt_enable
- ARGS ((
- MI_CONNECTION *conn,
- const char * owner,
- const char * tabname,
- dtime_t * timeStamp
- ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_aqt_disable
- ARGS ((
- MI_CONNECTION *conn,
- const char * owner,
- const char * tabname
- ));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_protect_routine
- ARGS ((
- char * name
- ));
- MI_DECL
- mi_unsigned_char1 MI_PROC_EXPORT
- mi_fp_argisinput ARGS((MI_FPARAM *fparamPtr,
- mi_integer arg));
- MI_DECL
- mi_unsigned_char1 MI_PROC_EXPORT
- mi_fp_argisoutput ARGS((MI_FPARAM *fparamPtr,
- mi_integer arg));
- MI_DECL
- mi_unsigned_integer MI_PROC_EXPORT
- mi_row_rowid ARGS((MI_ROW *row));
- MI_DECL
- mi_integer MI_PROC_EXPORT
- mi_row_fragid ARGS((MI_ROW *row));
- EXTERNC_END
- #endif /* _MILIB_H_ */
|