[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, master, updated. milestone5.1

Daniel Willmann daniel at totalueberwachung.de
Sat Jun 6 12:21:46 UTC 2009


The following commit has been merged in the master branch:
commit af530a040b84a62c2d37cb47fa1fde6b66ef9c91
Author: Daniel Willmann <daniel at totalueberwachung.de>
Date:   Fri Feb 13 21:49:05 2009 +0100

    ogsmd: Fix FSO bug #218 (@ instead of padding)

diff --git a/framework/subsystems/ogsmd/gsm/sms.py b/framework/subsystems/ogsmd/gsm/sms.py
index 43053b9..3d27b52 100644
--- a/framework/subsystems/ogsmd/gsm/sms.py
+++ b/framework/subsystems/ogsmd/gsm/sms.py
@@ -53,8 +53,15 @@ class PDUAddress:
         if number == []:
             number = ""
         elif num_type == 5:
+            # Alphanumeric Address
             number = unpack_sevenbit( number )
             number = number.decode( "gsm_default" )
+
+            # On some occasions when names are n*8-1 characters long
+            # there are exactly 7 padding bits left which will result
+            # in the "@" character being appended to the name.
+            if len(number) % 8 == 0 and number[-1] == "@":
+                number = number[:-1]
         else:
             number = bcd_decode( number )
             # Every occurence of the padding semi-octet should be removed
@@ -134,6 +141,7 @@ class SMS(object):
         # OA/DA - Originating or Destination Address
         # WARNING, the length is coded in digits of the number, not in octets occupied!
         if sms.type == "sms-submit" or sms.type == "sms-deliver":
+            # XXX: Is this correct? Can we detect the @-padding issue in oa_len?
             oa_len = 1 + (bytes[offset] + 1) / 2
             offset += 1
             sms.oa = PDUAddress.decode( bytes[offset:offset+oa_len] )
@@ -235,10 +243,6 @@ class SMS(object):
                 # FIXME
                 self.udh[iei] = ie_data
 
-        # User Data FIXME
-        # We need to look at the DCS in order to be able to decide what
-        # to use here
-
         # We need to lose the padding bits before the start of the
         # seven-bit packed data, which means we need to figure out how
         # many there are...

-- 
FSO frameworkd Debian packaging



More information about the pkg-fso-commits mailing list