r286 - in trunk/software/gsm0710muxd: data src

smartphones-commits at lists.linuxtogo.org smartphones-commits at lists.linuxtogo.org
Tue Apr 29 18:06:29 CEST 2008


Author: emdete
Date: 2008-04-29 18:06:29 +0200 (Tue, 29 Apr 2008)
New Revision: 286

Modified:
   trunk/software/gsm0710muxd/data/org.pyneo.muxer.service.in
   trunk/software/gsm0710muxd/src/gsm0710muxd.c
   trunk/software/gsm0710muxd/src/muxercontrol.c
   trunk/software/gsm0710muxd/src/muxercontrol.h
Log:
new name for dbus 


Modified: trunk/software/gsm0710muxd/data/org.pyneo.muxer.service.in
===================================================================
--- trunk/software/gsm0710muxd/data/org.pyneo.muxer.service.in	2008-04-29 14:50:42 UTC (rev 285)
+++ trunk/software/gsm0710muxd/data/org.pyneo.muxer.service.in	2008-04-29 16:06:29 UTC (rev 286)
@@ -1,4 +1,4 @@
 [D-BUS Service]
-Name=org.pyneo.muxer
+Name=org.freesmartphone.GSM.MUX
 Exec=@sbindir@/gsm0710muxd
 User=root

Modified: trunk/software/gsm0710muxd/src/gsm0710muxd.c
===================================================================
--- trunk/software/gsm0710muxd/src/gsm0710muxd.c	2008-04-29 14:50:42 UTC (rev 285)
+++ trunk/software/gsm0710muxd/src/gsm0710muxd.c	2008-04-29 16:06:29 UTC (rev 286)
@@ -56,7 +56,7 @@
 // ~/Source/openmoko/build/tmp/work/i686-linux/glib-2.0-native-2.12.4-r1/glib-2.12.4/tests/mainloop-test.c
 // http://www.linuxquestions.org/questions/linux-software-2/dbus-problem-505442/
 
-// dbus-send --system --print-reply --type=method_call --dest=org.pyneo /org/pyneo/Muxer org.freesmartphone.GSM.MUX.AllocChannel string:xxx
+// dbus-send --system --print-reply --type=method_call --dest=org.pyneo.muxer /org/pyneo/Muxer org.freesmartphone.GSM.MUX.AllocChannel string:xxx
 
 ///////////////////////////////////////////////////////////////// defines
 #define LOG(lvl, f, ...) do{if(lvl<=syslog_level)syslog(lvl,"%s:%d:%s(): " f "\n", __FILE__, __LINE__, __FUNCTION__, ##__VA_ARGS__);}while(0)
@@ -125,14 +125,6 @@
 	unsigned char *data;
 } GSM0710_Frame;
 
-// for storing tempoary GSM0710_Buffer data in advanced option mode
-typedef struct GSM0710_AdvancedFrame
-{
-	unsigned char data[GSM0710_BUFFER_SIZE];
-	int length;
-	int found_esc;
-} GSM0710_AdvancedFrame;
-
 //
 typedef struct GSM0710_Buffer
 {
@@ -143,7 +135,9 @@
 	int flag_found;// set if last character read was flag
 	unsigned long received_count;
 	unsigned long dropped_count;
-	GSM0710_AdvancedFrame *advtmp;
+	unsigned char adv_data[GSM0710_BUFFER_SIZE];
+	int adv_length;
+	int adv_found_esc;
 } GSM0710_Buffer;
 
 // Channel data 
@@ -658,7 +652,7 @@
 	return TRUE;
 }
 
-static gboolean c_alloc_channel(const char* origin, char** name)
+static gboolean c_alloc_channel(const char* origin, const char** name)
 {
 	LOG(LOG_DEBUG, "Enter");
 	int i;
@@ -726,7 +720,7 @@
 	GObject* obj = (GObject*)muxer_control_gen();
 	DBusError err;
 	memset(&err, 0, sizeof(err));
-	if (dbus_bus_request_name(dbus_g_connection_get_connection(g_conn), "org.pyneo", DBUS_NAME_FLAG_ALLOW_REPLACEMENT|DBUS_NAME_FLAG_REPLACE_EXISTING, &err) < 0)
+	if (dbus_bus_request_name(dbus_g_connection_get_connection(g_conn), "org.pyneo.muxer", DBUS_NAME_FLAG_ALLOW_REPLACEMENT|DBUS_NAME_FLAG_REPLACE_EXISTING, &err) < 0)
 	{
 		if (dbus_error_is_set(&err))
 			LOG(LOG_ERR, "dbus error with dbus_bus_request_name '%s' '%s'", err.name, err.message);
@@ -830,14 +824,13 @@
 static GSM0710_Buffer *gsm0710_buffer_init(
 	)
 {
-	GSM0710_Buffer *buf;
-	if ((buf = (GSM0710_Buffer*)malloc(sizeof(GSM0710_Buffer))))
+	GSM0710_Buffer* buf = (GSM0710_Buffer*)malloc(sizeof(GSM0710_Buffer));
+	if (buf)
 	{
 		memset(buf, 0, sizeof(GSM0710_Buffer));
 		buf->readp = buf->data;
 		buf->writep = buf->data;
 		buf->endp = buf->data + GSM0710_BUFFER_SIZE;
-		buf->advtmp = 0;
 	}
 	return buf;
 }
@@ -850,8 +843,6 @@
 static void gsm0710_buffer_destroy(
 	GSM0710_Buffer* buf)
 {
-	if (buf->advtmp)
-		free(buf->advtmp);
 	free(buf);
 }
 
@@ -1045,13 +1036,6 @@
 	GSM0710_Buffer * buf)
 {
 	LOG(LOG_DEBUG, "Enter");
-	if (!buf->advtmp)
-	{
-		if ((buf->advtmp = (GSM0710_AdvancedFrame*)malloc(sizeof(GSM0710_AdvancedFrame))) != NULL)
-			memset(buf->advtmp, 0, sizeof(GSM0710_AdvancedFrame));
-		else
-			LOG(LOG_ALERT, "Out of memory, when allocating space for frame");
-	}
 l_begin:
 //Find start flag
 	while (!buf->flag_found && gsm0710_buffer_length(buf) > 0)
@@ -1059,28 +1043,28 @@
 		if (*buf->readp == GSM0710_FRAME_ADV_FLAG)
 		{
 			buf->flag_found = 1;
-			buf->advtmp->length = 0;
-			buf->advtmp->found_esc = 0;
+			buf->adv_length = 0;
+			buf->adv_found_esc = 0;
 		}
 		gsm0710_buffer_inc(buf, buf->readp);
 	}
 	if (!buf->flag_found)// no frame started
 		return NULL;
-	if (0 == buf->advtmp->length)
+	if (0 == buf->adv_length)
 //skip empty frames (this causes troubles if we're using DLC 62)
 		while (gsm0710_buffer_length(buf) > 0 && (*buf->readp == GSM0710_FRAME_ADV_FLAG))
 			gsm0710_buffer_inc(buf, buf->readp);
 	while (gsm0710_buffer_length(buf) > 0)
 	{
-		if (!buf->advtmp->found_esc && GSM0710_FRAME_ADV_FLAG == *(buf->readp))
+		if (!buf->adv_found_esc && GSM0710_FRAME_ADV_FLAG == *(buf->readp))
 		{// closing flag found
 			GSM0710_Frame *frame = NULL;
-			unsigned char *data = buf->advtmp->data;
+			unsigned char *data = buf->adv_data;
 			unsigned char fcs = 0xFF;
 			gsm0710_buffer_inc(buf, buf->readp);
-			if (buf->advtmp->length < 3)
+			if (buf->adv_length < 3)
 			{
-				LOG(LOG_WARNING, "Too short adv frame, length:%d", buf->advtmp->length);
+				LOG(LOG_WARNING, "Too short adv frame, length:%d", buf->adv_length);
 				buf->flag_found = 0;
 				goto l_begin;
 			}
@@ -1090,7 +1074,7 @@
 				fcs = r_crctable[fcs ^ data[0]];
 				frame->control = data[1];
 				fcs = r_crctable[fcs ^ data[1]];
-				frame->length = buf->advtmp->length - 3;
+				frame->length = buf->adv_length - 3;
 			}
 			else
 				LOG(LOG_ALERT, "Out of memory, when allocating space for frame");
@@ -1115,7 +1099,7 @@
 				}
 			}
 //check FCS
-			if (r_crctable[fcs ^ data[buf->advtmp->length - 1]] != 0xCF)
+			if (r_crctable[fcs ^ data[buf->adv_length - 1]] != 0xCF)
 			{
 				LOG(LOG_WARNING, "Dropping frame: FCS doesn't match");
 				destroy_frame(frame);
@@ -1131,25 +1115,25 @@
 				return frame;
 			}
 		}
-		if (buf->advtmp->length >= sizeof(buf->advtmp->data))
+		if (buf->adv_length >= sizeof(buf->adv_data))
 		{
-			LOG(LOG_WARNING, "Too long adv frame, length:%d", buf->advtmp->length);
+			LOG(LOG_WARNING, "Too long adv frame, length:%d", buf->adv_length);
 			buf->flag_found = 0;
 			buf->dropped_count++;
 			goto l_begin;
 		}
-		if (buf->advtmp->found_esc)
+		if (buf->adv_found_esc)
 		{
-			buf->advtmp->data[buf->advtmp->length] = *(buf->readp) ^ GSM0710_FRAME_ADV_ESC_COPML;
-			buf->advtmp->length++;
-			buf->advtmp->found_esc = 0;
+			buf->adv_data[buf->adv_length] = *(buf->readp) ^ GSM0710_FRAME_ADV_ESC_COPML;
+			buf->adv_length++;
+			buf->adv_found_esc = 0;
 		}
 		else if (GSM0710_FRAME_ADV_ESC == *(buf->readp))
-			buf->advtmp->found_esc = 1;
+			buf->adv_found_esc = 1;
 		else
 		{
-			buf->advtmp->data[buf->advtmp->length] = *(buf->readp);
-			buf->advtmp->length++;
+			buf->adv_data[buf->adv_length] = *(buf->readp);
+			buf->adv_length++;
 		}
 		gsm0710_buffer_inc(buf, buf->readp);
 	}

Modified: trunk/software/gsm0710muxd/src/muxercontrol.c
===================================================================
--- trunk/software/gsm0710muxd/src/muxercontrol.c	2008-04-29 14:50:42 UTC (rev 285)
+++ trunk/software/gsm0710muxd/src/muxercontrol.c	2008-04-29 16:06:29 UTC (rev 286)
@@ -8,12 +8,16 @@
 #include <dbus/dbus-glib-lowlevel.h>
 #include <dbus/dbus-glib.h>
 
+
+
+
 enum  {
 	MUXER_CONTROL_DUMMY_PROPERTY
 };
 static gpointer muxer_control_parent_class = NULL;
 
 
+
 void muxer_control_run (MuxerControl* self) {
 	GError * inner_error;
 	DBusGConnection* conn;
@@ -30,24 +34,29 @@
 
 gboolean muxer_control_reset_modem (MuxerControl* self, const char* origin) {
 	g_return_val_if_fail (IS_MUXER_CONTROL (self), FALSE);
+	g_return_val_if_fail (origin != NULL, FALSE);
 	return c_reset_modem (origin);
 }
 
 
 gboolean muxer_control_set_power (MuxerControl* self, const char* origin, gboolean on) {
 	g_return_val_if_fail (IS_MUXER_CONTROL (self), FALSE);
+	g_return_val_if_fail (origin != NULL, FALSE);
 	return c_set_power (origin, on);
 }
 
 
 gboolean muxer_control_get_power (MuxerControl* self, const char* origin, gboolean on) {
 	g_return_val_if_fail (IS_MUXER_CONTROL (self), FALSE);
+	g_return_val_if_fail (origin != NULL, FALSE);
 	return c_get_power (origin);
 }
 
 
 gboolean muxer_control_alloc_channel (MuxerControl* self, const char* origin, const char* channel) {
 	g_return_val_if_fail (IS_MUXER_CONTROL (self), FALSE);
+	g_return_val_if_fail (origin != NULL, FALSE);
+	g_return_val_if_fail (channel != NULL, FALSE);
 	return c_alloc_channel (origin, channel);
 }
 

Modified: trunk/software/gsm0710muxd/src/muxercontrol.h
===================================================================
--- trunk/software/gsm0710muxd/src/muxercontrol.h	2008-04-29 14:50:42 UTC (rev 285)
+++ trunk/software/gsm0710muxd/src/muxercontrol.h	2008-04-29 16:06:29 UTC (rev 286)
@@ -45,6 +45,7 @@
 MuxerControl* muxer_control_new (void);
 GType muxer_control_get_type (void);
 
+
 G_END_DECLS
 
 #endif




More information about the Smartphones-commits mailing list