--- gsm/src/libgsmd/libgsmd.c.orig	2007-09-25 00:41:56.000000000 -0500
+++ gsm/src/libgsmd/libgsmd.c	2007-09-25 00:43:44.000000000 -0500
@@ -210,7 +210,7 @@
 			pos += rc;
 		}
 	}
-	return 0;
+	return (sizeof(*gmh) + gmh->len);
 }
 
 struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len)
