Enlightenment CVS committal
Author : raster
Project : e17
Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_con
Modified Files:
Tag: SPLIT
Ecore_Con.h ecore_con.c ecore_con_private.h
Log Message:
protect data types... :)
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_con/Attic/Ecore_Con.h,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -3 -r1.1.2.3 -r1.1.2.4
--- Ecore_Con.h 17 Mar 2003 13:06:10 -0000 1.1.2.3
+++ Ecore_Con.h 17 Mar 2003 13:19:07 -0000 1.1.2.4
@@ -69,9 +69,11 @@
int ecore_con_shutdown(void);
Ecore_Con_Server *ecore_con_server_add(Ecore_Con_Type type, char *name, int port,
const void *data);
+
Ecore_Con_Server *ecore_con_server_connect(Ecore_Con_Type type, char *name, int
port, const void *data);
void *ecore_con_server_del(Ecore_Con_Server *svr);
void *ecore_con_server_data_get(Ecore_Con_Server *svr);
+ int ecore_con_server_connected_get(Ecore_Con_Server *svr);
int ecore_con_server_send(Ecore_Con_Server *svr, void *data, int
size);
int ecore_con_client_send(Ecore_Con_Client *cl, void *data, int
size);
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_con/Attic/ecore_con.c,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -3 -r1.1.2.6 -r1.1.2.7
--- ecore_con.c 17 Mar 2003 13:06:11 -0000 1.1.2.6
+++ ecore_con.c 17 Mar 2003 13:19:08 -0000 1.1.2.7
@@ -98,6 +98,7 @@
struct linger lin;
char buf[4096];
+ if (port < 0) return NULL;
/* local user socket: FILE: ~/.ecore/[name]/[port] */
/* local system socket: FILE: /tmp/.ecore_service|[name]|[port] */
/* remote system socket: TCP/IP: [name]:[port] */
@@ -110,6 +111,7 @@
char *homedir;
struct stat st;
+ if (!name) goto error;
if (type == ECORE_CON_LOCAL_USER)
{
mode_t mask;
@@ -175,6 +177,7 @@
svr->data = (void *)data;
svr->created = 1;
servers = _ecore_list_append(servers, svr);
+ ECORE_MAGIC_SET(svr, ECORE_MAGIC_CON_SERVER);
return svr;
error:
@@ -204,7 +207,9 @@
struct sockaddr_in socket_addr;
int curstate;
char buf[4096];
-
+
+ if (!name) return NULL;
+ if (port < 0) return NULL;
/* local user socket: FILE: ~/.ecore/[name]/[port] */
/* local system socket: FILE: /tmp/.ecore_service|[name]|[port] */
/* remote system socket: TCP/IP: [name]:[port] */
@@ -293,6 +298,7 @@
svr->data = (void *)data;
svr->created = 0;
servers = _ecore_list_append(servers, svr);
+ ECORE_MAGIC_SET(svr, ECORE_MAGIC_CON_SERVER);
return svr;
error:
@@ -314,7 +320,13 @@
ecore_con_server_del(Ecore_Con_Server *svr)
{
void *data;
-
+
+ if (!ECORE_MAGIC_CHECK(svr, ECORE_MAGIC_CON_SERVER))
+ {
+ ECORE_MAGIC_FAIL(svr, ECORE_MAGIC_CON_SERVER,
+ "ecore_con_server_del");
+ return NULL;
+ }
data = svr->data;
_ecore_con_server_free(svr);
return data;
@@ -329,6 +341,12 @@
void *
ecore_con_server_data_get(Ecore_Con_Server *svr)
{
+ if (!ECORE_MAGIC_CHECK(svr, ECORE_MAGIC_CON_SERVER))
+ {
+ ECORE_MAGIC_FAIL(svr, ECORE_MAGIC_CON_SERVER,
+ "ecore_con_server_data_get");
+ return NULL;
+ }
return svr->data;
}
@@ -339,9 +357,36 @@
* <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
*/
int
+ecore_con_server_connected_get(Ecore_Con_Server *svr)
+{
+ if (!ECORE_MAGIC_CHECK(svr, ECORE_MAGIC_CON_SERVER))
+ {
+ ECORE_MAGIC_FAIL(svr, ECORE_MAGIC_CON_SERVER,
+ "ecore_con_server_connected_get");
+ return 0;
+ }
+ if (svr->connecting) return 0;
+ return 1;
+}
+
+/**
+ * To be documented.
+ *
+ * FIXME: To be fixed.
+ * <hr><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+ */
+int
ecore_con_server_send(Ecore_Con_Server *svr, void *data, int size)
{
+ if (!ECORE_MAGIC_CHECK(svr, ECORE_MAGIC_CON_SERVER))
+ {
+ ECORE_MAGIC_FAIL(svr, ECORE_MAGIC_CON_SERVER,
+ "ecore_con_server_send");
+ return 0;
+ }
if (svr->dead) return 1;
+ if (!data) return 0;
+ if (size < 1) return 0;
ecore_main_fd_handler_active_set(svr->fd_handler, ECORE_FD_READ | ECORE_FD_WRITE);
if (svr->buf)
{
@@ -373,7 +418,15 @@
int
ecore_con_client_send(Ecore_Con_Client *cl, void *data, int size)
{
+ if (!ECORE_MAGIC_CHECK(cl, ECORE_MAGIC_CON_CLIENT))
+ {
+ ECORE_MAGIC_FAIL(cl, ECORE_MAGIC_CON_CLIENT,
+ "ecore_con_client_send");
+ return 0;
+ }
if (cl->dead) return 0;
+ if (!data) return 0;
+ if (size < 1) return 0;
ecore_main_fd_handler_active_set(cl->fd_handler, ECORE_FD_READ | ECORE_FD_WRITE);
if (cl->buf)
{
@@ -405,6 +458,12 @@
Ecore_Con_Server *
ecore_con_client_server_get(Ecore_Con_Client *cl)
{
+ if (!ECORE_MAGIC_CHECK(cl, ECORE_MAGIC_CON_CLIENT))
+ {
+ ECORE_MAGIC_FAIL(cl, ECORE_MAGIC_CON_CLIENT,
+ "ecore_con_client_server_get");
+ return NULL;
+ }
return cl->server;
}
@@ -417,12 +476,19 @@
void
ecore_con_client_del(Ecore_Con_Client *cl)
{
+ if (!ECORE_MAGIC_CHECK(cl, ECORE_MAGIC_CON_CLIENT))
+ {
+ ECORE_MAGIC_FAIL(cl, ECORE_MAGIC_CON_CLIENT,
+ "ecore_con_client_del");
+ return;
+ }
_ecore_con_client_free(cl);
}
static void
_ecore_con_server_free(Ecore_Con_Server *svr)
{
+ ECORE_MAGIC_SET(svr, ECORE_MAGIC_NONE);
while ((svr->buf) && (!svr->dead)) _ecore_con_server_flush(svr);
if (svr->buf) free(svr->buf);
servers = _ecore_list_remove(servers, svr);
@@ -439,6 +505,7 @@
static void
_ecore_con_client_free(Ecore_Con_Client *cl)
{
+ ECORE_MAGIC_SET(cl, ECORE_MAGIC_NONE);
while ((cl->buf) && (!cl->dead)) _ecore_con_client_flush(cl);
if (cl->buf) free(cl->buf);
cl->server->clients = _ecore_list_remove(cl->server->clients, cl);
@@ -478,6 +545,7 @@
ECORE_FD_READ,
_ecore_con_svr_cl_handler, cl,
NULL, NULL);
+ ECORE_MAGIC_SET(cl, ECORE_MAGIC_CON_CLIENT);
svr->clients = _ecore_list_append(svr->clients, cl);
{
Ecore_Con_Event_Client_Add *e;
===================================================================
RCS file:
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_con/Attic/ecore_con_private.h,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -3 -r1.1.2.3 -r1.1.2.4
--- ecore_con_private.h 17 Mar 2003 07:33:57 -0000 1.1.2.3
+++ ecore_con_private.h 17 Mar 2003 13:19:08 -0000 1.1.2.4
@@ -1,7 +1,8 @@
#ifndef _ECORE_CON_PRIVATE_H
#define _ECORE_CON_PRIVATE_H
-#define ECORE_MAGIC_CON 0x77665544
+#define ECORE_MAGIC_CON_SERVER 0x77665544
+#define ECORE_MAGIC_CON_CLIENT 0x77556677
typedef enum _Ecore_Con_Type
{
-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open!
Get cracking and register here for some mind boggling fun and
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs