summaryrefslogtreecommitdiffhomepage
path: root/digital/avr
diff options
context:
space:
mode:
authorNicolas Schodet2011-04-19 21:09:44 +0200
committerNicolas Schodet2011-04-19 21:12:09 +0200
commit1a3ffd12000a50845ebeb06b14663304169305c9 (patch)
treef365583ce7bfa855b8fc17bf9675b04bab635f05 /digital/avr
parent3f74740bec4e1e3a9e168d84ae314b1e76705b4f (diff)
digital/avr/modules/host: add mex connection query, refs #157
Diffstat (limited to 'digital/avr')
-rw-r--r--digital/avr/modules/host/mex.h4
-rw-r--r--digital/avr/modules/host/mex.host.c7
-rw-r--r--digital/avr/modules/host/test/test_mex.c2
3 files changed, 13 insertions, 0 deletions
diff --git a/digital/avr/modules/host/mex.h b/digital/avr/modules/host/mex.h
index 82e65103..78e1368d 100644
--- a/digital/avr/modules/host/mex.h
+++ b/digital/avr/modules/host/mex.h
@@ -90,6 +90,10 @@ mex_msg_mtype (mex_msg_t *msg);
void
mex_node_connect (void);
+/** Query connection status, returns 0 if not connected. */
+int
+mex_node_connected (void);
+
/** Close connection. */
void
mex_node_close (void);
diff --git a/digital/avr/modules/host/mex.host.c b/digital/avr/modules/host/mex.host.c
index 8921cadd..349ee3b6 100644
--- a/digital/avr/modules/host/mex.host.c
+++ b/digital/avr/modules/host/mex.host.c
@@ -395,6 +395,13 @@ mex_node_connect (void)
}
}
+/** Query connection status, returns 0 if not connected. */
+int
+mex_node_connected (void)
+{
+ return mex_node_global.socket != -1;
+}
+
/** Close connection. */
void
mex_node_close (void)
diff --git a/digital/avr/modules/host/test/test_mex.c b/digital/avr/modules/host/test/test_mex.c
index e79e6f68..7d4badad 100644
--- a/digital/avr/modules/host/test/test_mex.c
+++ b/digital/avr/modules/host/test/test_mex.c
@@ -68,7 +68,9 @@ main (int argc, char **argv)
fprintf (stderr, "%s 1|2\n", argv[0]);
return 1;
}
+ assert (!mex_node_connected ());
mex_node_connect ();
+ assert (mex_node_connected ());
mtype_coucou1 = mex_node_reservef ("%s%d", "coucou", 1);
mtype_coucou2 = mex_node_reservef ("%s%d", "coucou", 2);
mtype_oucouc = mex_node_reserve ("oucouc");