Prototype polishing
authorDaniel Kouřil <kouril@ics.muni.cz>
Thu, 12 Jan 2012 09:36:06 +0000 (09:36 +0000)
committerDaniel Kouřil <kouril@ics.muni.cz>
Thu, 12 Jan 2012 09:36:06 +0000 (09:36 +0000)
- added a type for the canl return code
- added a define to posibly express "exportability" of a symbol

emi.canl.canl-c/src/canl.c
emi.canl.canl-c/src/canl.h
emi.canl.canl-c/src/canl_err.c

index a09fd4a..6deae88 100644 (file)
@@ -42,7 +42,8 @@ void canl_free_ctx(canl_ctx cc)
     free(ctx);
 }
 
-int canl_create_io_handler(canl_ctx cc, canl_io_handler *io)
+canl_err_code
+canl_create_io_handler(canl_ctx cc, canl_io_handler *io)
 {
     io_handler *new_io_h = NULL;
     glb_ctx *g_cc = cc;
@@ -76,7 +77,8 @@ static int init_io_content(glb_ctx *cc, io_handler *io)
     return 0;
 }
 
-int canl_io_connect(canl_ctx cc, canl_io_handler io, const char *host, const char *service,
+canl_err_code
+canl_io_connect(canl_ctx cc, canl_io_handler io, const char *host, const char *service,
        int port, gss_OID_set auth_mechs,
         int flags, struct timeval *timeout)
 {
@@ -217,7 +219,8 @@ static int try_connect(glb_ctx *glb_cc, io_handler *io_cc, char *addr,
 }
 
 /*TODO select + timeout, EINTR!!! */ 
-int canl_io_accept(canl_ctx cc, canl_io_handler io, int new_fd,
+canl_err_code
+canl_io_accept(canl_ctx cc, canl_io_handler io, int new_fd,
         struct sockaddr s_addr, int flags, canl_principal *peer,
         struct timeval *timeout)
 {
@@ -251,7 +254,8 @@ end:
 }
 
 /* close connection, preserve some info for the future reuse */
-int canl_io_close(canl_ctx cc, canl_io_handler io)
+canl_err_code
+canl_io_close(canl_ctx cc, canl_io_handler io)
 {
     io_handler *io_cc = (io_handler*) io;
     glb_ctx *glb_cc = (glb_ctx*) cc;
@@ -291,7 +295,8 @@ static void io_destroy(glb_ctx *cc, io_handler *io)
 }
 
 
-int canl_io_destroy(canl_ctx cc, canl_io_handler io)
+canl_err_code
+canl_io_destroy(canl_ctx cc, canl_io_handler io)
 {
     int err = 0;
     glb_ctx *glb_cc = (glb_ctx*) cc;
index a4aa739..ba2b34d 100644 (file)
@@ -10,36 +10,67 @@ extern "C" {
 
 #include <canl_err.h>
 
+#ifndef CANL_CALLCONV
+#define CANL_CALLCONV
+#endif
+
 typedef void *canl_io_handler;
 typedef void *canl_ctx;
 typedef void *canl_principal;
 
-canl_ctx canl_create_ctx();
-void canl_free_ctx(canl_ctx cc);
-int canl_create_io_handler(canl_ctx, canl_io_handler*);
+typedef long canl_err_code;
+
+canl_ctx CANL_CALLCONV
+canl_create_ctx();
+
+void CANL_CALLCONV
+canl_free_ctx(canl_ctx cc);
+
+canl_err_code CANL_CALLCONV
+canl_create_io_handler(canl_ctx cc, canl_io_handler*);
+
+canl_err_code CANL_CALLCONV
+canl_io_connect(canl_ctx cc, canl_io_handler io, const char *host, const char *service,
+                int port, gss_OID_set auth_mechs, int flags, struct timeval *timeout);
+
+canl_err_code CANL_CALLCONV
+canl_io_accept(canl_ctx cc, canl_io_handler io, int fd, struct sockaddr s_addr,
+               int flags, canl_principal *peer, struct timeval *timeout);
 
-int canl_io_connect(canl_ctx cc, canl_io_handler io, const char *host, const char *service,
-        int port, gss_OID_set auth_mechs, int flags, struct timeval *timeout);
-int canl_io_accept(canl_ctx cc, canl_io_handler io, int fd,
-        struct sockaddr s_addr, int flags, canl_principal *peer,
-        struct timeval *timeout);
-size_t canl_io_read(canl_ctx cc, canl_io_handler io, void *buffer, size_t size, struct timeval *timeout);
-size_t canl_io_write(canl_ctx cc, canl_io_handler io, void *buffer, size_t size, struct timeval *timeout);
+size_t CANL_CALLCONV
+canl_io_read(canl_ctx cc, canl_io_handler io, void *buffer,
+            size_t size, struct timeval *timeout);
 
-long
+size_t CANL_CALLCONV
+canl_io_write(canl_ctx cc, canl_io_handler io, void *buffer,
+             size_t size, struct timeval *timeout);
+
+canl_err_code CANL_CALLCONV
 canl_get_error_code(canl_ctx cc);
 
-char *
+char * CANL_CALLCONV
 canl_get_error_message(canl_ctx);
 
-int canl_get_error(canl_ctx cc, char ** reason);
-int canl_io_close(canl_ctx cc, canl_io_handler io);
-int canl_io_destroy(canl_ctx cc, canl_io_handler io);
+canl_err_code CANL_CALLCONV
+canl_get_error(canl_ctx cc, char ** reason);
+
+canl_err_code CANL_CALLCONV
+canl_io_close(canl_ctx cc, canl_io_handler io);
+
+canl_err_code CANL_CALLCONV
+canl_io_destroy(canl_ctx cc, canl_io_handler io);
+
+canl_err_code CANL_CALLCONV
+canl_princ_name(canl_ctx, const canl_principal, char **);
+
+canl_err_code CANL_CALLCONV
+canl_princ_mech(canl_ctx, const canl_principal, gss_OID *);
+
+char * CANL_CALLCONV
+canl_mech2str(canl_ctx, gss_OID);
 
-int canl_princ_name(canl_ctx, const canl_principal, char **);
-int canl_princ_mech(canl_ctx, const canl_principal, gss_OID *);
-char * canl_mech2str(canl_ctx, gss_OID);
-const gss_OID canl_str2mech(canl_ctx, const char mech);
+const gss_OID CANL_CALLCONV
+canl_str2mech(canl_ctx, const char mech);
 
 #ifdef __cplusplus
 }       
index d77b643..08683ce 100644 (file)
@@ -90,7 +90,8 @@ void reset_error (glb_ctx *cc, unsigned long err_code)
 }
 
 /* Provide human readable information about errors */
-int canl_get_error(canl_ctx cc, char  **reason)
+canl_err_code
+canl_get_error(canl_ctx cc, char  **reason)
 {
     int err = 0;
     int e_orig = unknown_error;