def __init__(self, ser, tun, session):
     self.tun = tun
     self.arq = arq.ARQ(ser, self.tun, session)
     self.tun.start()
     self.sched = poller.Poller()
     cbE = Callback.CallbackEnq(self.arq, 0.05)
     cbT = Callback.CallbackTun(self.arq)
     self.sched.adiciona(cbE)
     self.sched.adiciona(cbT)
示例#2
0
    def __init__(self, serialPath, isTun, id):
        ''' serialPath: interface serial para troca de dados
            isTun: boolean que indica se será utilizada a interface tun
            id: identificação da sessão a ser estabelecida
        '''
        self._isTun = isTun
        if (self._isTun == True):
            try:
                self._dev = serial.Serial(serialPath)
            except:
                print("Verifique se a porta serial foi criada")
                print()
                sys.exit(0)

            try:
                self._tun = tun.Tun("tun0",
                                    "10.0.0.1",
                                    "10.0.0.2",
                                    mask="255.255.255.252",
                                    mtu=1500,
                                    qlen=4)
                self._tun.start()
            except Exception:
                print("Você deve executar o programa como root!!!")
                print()
                sys.exit(0)
            self._poller = poller.Poller()
            self._arq = arq.ARQ(None, 1)
            self._ger = gerencia.GER(None, id, 10)
            self._enq = framing.Framing(self._dev, 1, 1024, 3)
            self._tunLayer = tunlayer.TunLayer(self._tun)
        else:
            try:
                self._dev = serial.Serial(serialPath)
            except:
                print("Verifique se a porta serial foi criada")
                print()
                sys.exit(0)
            self._poller = poller.Poller()
            self._arq = arq.ARQ(None, 1)
            self._ger = gerencia.GER(None, id, 10)
            self._enq = framing.Framing(self._dev, 1, 1024, 3)
            self._fake = fakelayer.FakeLayer(sys.stdin, 10)
示例#3
0
import enq
import serial
import arq

#ser = serial.Serial('/dev/ttyUSB0',9600)
ser = serial.Serial('/dev/pts/3', 9600)
frame = enq.Enquadramento(ser)
data = arq.ARQ(frame, 0)
while (True):
    msg = data.recebe()
    print(msg[1])