[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, master, updated. milestone4-368-g700ab82

Michael 'Mickey' Lauer mickey at vanille-media.de
Mon Feb 2 18:51:33 UTC 2009


The following commit has been merged in the master branch:
commit 8b4768c935f74b00da61ca57debab9773ec97273
Author: Michael 'Mickey' Lauer <mickey at vanille-media.de>
Date:   Thu Dec 11 16:12:39 2008 +0100

    ogsmd: start reworking ppp connection setup/shutdown
    WIP; it's broken atm. :D

diff --git a/framework/subsystems/ogsmd/modems/abstract/mediator.py b/framework/subsystems/ogsmd/modems/abstract/mediator.py
index ff9b0d9..9dfcacf 100644
--- a/framework/subsystems/ogsmd/modems/abstract/mediator.py
+++ b/framework/subsystems/ogsmd/modems/abstract/mediator.py
@@ -1444,22 +1444,29 @@ class PdpActivateContext( PdpMediator ):
 class PdpDeactivateContext( PdpMediator ):
 #=========================================================================#
     def trigger( self ):
-        global pdpConnection
-        if pdpConnection is not None and pdpConnection.isActive():
-            pdpConnection.deactivate()
-            self._ok()
-        else:
-            self._error( error.PdpNotFound( "there is no active pdp context" ) )
+        self._commchannel.enqueue( '+CGACT=0', self.responseFromChannel, self.errorFromChannel )
+        self._ok()
+
+        # FIXME do we want to wait and honor the result?
 
 #=========================================================================#
 class PdpGetContextStatus( PdpMediator ):
 #=========================================================================#
     def trigger( self ):
-        global pdpConnection
-        if pdpConnection is None:
-            self._ok( "release" )
+        self._commchannel.enqueue( '+CGACT?', self.responseFromChannel, self.errorFromChannel )
+
+    def responseFromChannel( self, request, response ):
+        if ( response[-1] == "OK" ):
+            if len( response ) < 2:
+                self._ok( "release" ) # rather 'unknown'?
+            else:
+                # FIXME support more than one context
+                # (once we see the first modem that supports it)
+                number, status = self._rightHandSide( response[-2] ).split( ',' )
+                self._ok( "active" if status == '1' else "release" )
         else:
-            self._ok( pdpConnection.status() )
+            DeviceMediator.responseFromChannel( self, request, response )
+
 #
 # CB Mediators
 #

-- 
FSO frameworkd Debian packaging



More information about the pkg-fso-commits mailing list