Beispiel #1
0
    def setUpPreSession(self):
        TestAsNPeers.setUpPreSession(self)

        # Setup peer0 as source
        self.peers[0].destdir = '.'

        self.vodinputsize = 1017 * 1024 + 17

        f = open("vodinput.dat", "wb")
        for i in range(0, self.vodinputsize / 1024):
            data = chr((ord('a') + i) % 256) * 1024
            f.write(data)
        tail = 'x' * 17
        f.write(tail)
        f.close()

        self.peers[0].filename = "vodinput.dat"

        # Pre hash check and checkpoint
        sdef = SwiftDef()
        sdef.add_content(self.peers[0].filename)
        sdef.finalize(self.peers[0].binpath)
        self.swarmid = sdef.get_id()  # save roothash

        # Start peer1 as VOD downloader
        self.peers[1].destdir = '.'
        #self.peers[1].usegtest = False
        #self.peers[1].binpath = os.path.join("..","Debug","SwiftPPSP.exe")

        # For CMDGW communication for peer1
        self.buffer = ''
        self.stop = False
Beispiel #2
0
    def setUpPreSession(self):
        TestAsNPeers.setUpPreSession(self)

        # Setup peer0 as source
        self.peers[0].destdir = "."

        f = open("liveinput.dat", "wb")
        for i in range(0, 1017):
            data = chr((ord("a") + i) % 256) * 1024
            f.write(data)
        f.close()

        self.peers[0].listenport = 6778

        self.peers[0].livesourceinput = "liveinput.dat"
        self.peers[0].filename = "storage.dat"

        # Start peer1 as live downloader
        self.peers[1].destdir = "."

        self.peers[1].usegtest = False
        # self.peers[1].binpath = os.path.join("..","Debug","SwiftUMT.exe")

        self.peers[0].debug = True
        self.peers[1].debug = True

        # For CMDGW communication for peer1
        self.buffer = ""
        self.stop = False

        self.peers[0].urlfilename = "swarm.url"
        self.peers[0].livesigalg = ord(POPT_LSA_ECDSAP256SHA256)
Beispiel #3
0
    def setUpPreSession(self):
        TestAsNPeers.setUpPreSession(self)

        # Setup peer0 as source
        self.peers[0].destdir = '.'

        self.vodinputsize = 1017*1024+17

        f = open("vodinput.dat","wb")
        for i in range(0,self.vodinputsize/1024):
            data = chr((ord('a')+i)%256) * 1024
            f.write(data)
        tail = 'x' * 17
        f.write(tail)
        f.close()

        self.peers[0].filename = "vodinput.dat"

        # Pre hash check and checkpoint
        sdef = SwiftDef()
        sdef.add_content(self.peers[0].filename)
        sdef.finalize(self.peers[0].binpath)
        self.swarmid = sdef.get_id() # save roothash

        
        # Start peer1 as VOD downloader
        self.peers[1].destdir = '.'
        #self.peers[1].usegtest = False
        #self.peers[1].binpath = os.path.join("..","Debug","SwiftPPSP.exe")

        # For CMDGW communication for peer1        
        self.buffer = ''
        self.stop = False
Beispiel #4
0
    def setUpPreSession(self):
        TestAsNPeers.setUpPreSession(self)

        # Setup peer0 as source
        self.peers[0].destdir = '.'

        f = open("liveinput.dat", "wb")
        for i in range(0, 1017):
            data = chr((ord('a') + i) % 256) * 1024
            f.write(data)
        f.close()

        self.peers[0].listenport = 6778

        self.peers[0].livesourceinput = "liveinput.dat"
        self.peers[0].filename = "storage.dat"

        # Start peer1 as live downloader
        self.peers[1].destdir = '.'

        self.peers[1].usegtest = False
        #self.peers[1].binpath = os.path.join("..","Debug","SwiftUMT.exe")

        self.peers[0].debug = True
        self.peers[1].debug = True

        # For CMDGW communication for peer1
        self.buffer = ''
        self.stop = False

        self.peers[0].urlfilename = "swarm.url"
        self.peers[0].livesigalg = ord(POPT_LSA_ECDSAP256SHA256)
Beispiel #5
0
 def tearDown(self):
     TestAsNPeers.tearDown(self)
     
     fnlist = [self.peers[0].zerosdir,self.peers[1].destdir]
     for fn in fnlist:
         try:
             #shutil.rmtree(fn)
             pass
         except:
             pass
Beispiel #6
0
 def tearDown(self):
     TestAsNPeers.tearDown(self)
     fn = self.peers[0].filename
     sfn = binascii.hexlify(self.swarmid)
     fnlist = [fn,fn+".mhash",fn+".mbinmap",sfn,sfn+".mhash"]
     for fn in fnlist:
         try:
             os.remove(fn)
         except:
             pass
Beispiel #7
0
 def tearDown(self):
     TestAsNPeers.tearDown(self)
     fn = self.peers[0].filename
     sfn = binascii.hexlify(self.swarmid)
     fnlist = [fn, fn + ".mhash", fn + ".mbinmap", sfn, sfn + ".mhash"]
     for fn in fnlist:
         try:
             os.remove(fn)
         except:
             pass
Beispiel #8
0
    def tearDown(self):
        TestAsNPeers.tearDown(self)

        fnlist = [self.peers[0].zerosdir, self.peers[1].destdir]
        for fn in fnlist:
            try:
                #shutil.rmtree(fn)
                pass
            except:
                pass
Beispiel #9
0
    def tearDown(self):

        # time.sleep(100)

        TestAsNPeers.tearDown(self)
        try:
            os.remove(self.peers[0].livesourceinput)
        except:
            pass
        try:
            os.remove(self.peers[0].filename)
        except:
            pass
Beispiel #10
0
    def tearDown(self):

        #time.sleep(100)

        TestAsNPeers.tearDown(self)
        try:
            os.remove(self.peers[0].livesourceinput)
        except:
            pass
        try:
            os.remove(self.peers[0].filename)
        except:
            pass
Beispiel #11
0
    def setUpPostSession(self):
        TestAsNPeers.setUpPostSession(self)

        f = open(self.peers[0].urlfilename, "rb")
        swarmurl = f.read()
        f.close()
        swarmurl = swarmurl.strip()
        idx = swarmurl.find("/")
        if idx == -1:
            self.assertFalse(True)
        else:
            liveswarmidhex = swarmurl[idx + 1 :]
            print >>sys.stderr, "test: SwarmID <" + liveswarmidhex + ">"
            self.peers[1].liveswarmid = binascii.unhexlify(liveswarmidhex)
Beispiel #12
0
    def setUpPostSession(self):
        TestAsNPeers.setUpPostSession(self)

        f = open(self.peers[0].urlfilename, "rb")
        swarmurl = f.read()
        f.close()
        swarmurl = swarmurl.strip()
        idx = swarmurl.find("/")
        if idx == -1:
            self.assertFalse(True)
        else:
            liveswarmidhex = swarmurl[idx + 1:]
            print >> sys.stderr, "test: SwarmID <" + liveswarmidhex + ">"
            self.peers[1].liveswarmid = binascii.unhexlify(liveswarmidhex)
Beispiel #13
0
    def setUpPreSession(self):
        TestAsNPeers.setUpPreSession(self)
        
        # Setup peer0 as source
        self.peers[0].destdir = '.'
        
        #self.peers[0].destdir = tempfile.mkdtemp()
        self.peers[0].zerosdir = os.path.join(os.getcwd(),'seeddump')
        try:
            shutil.rmtree(self.peers[0].zerosdir)
        except:
            print_exc()
        os.mkdir(self.peers[0].zerosdir)

        
        print >>sys.stderr,"test: destdir is",self.peers[0].zerosdir
        
        # Create a multi-file swarm
        self.setUpFileList()
        
        idx = self.filelist[0][0].find("/")
        specprefix = self.filelist[0][0][0:idx]
        
        prefixdir = os.path.join(self.peers[0].zerosdir,specprefix)
        os.mkdir(prefixdir)

        sdef = SwiftDef()

        self.vodinputsize = 0L
        
        # Create content
        for fn,s in self.filelist:
            osfn = fn.replace("/",os.sep)
            fullpath = os.path.join(self.peers[0].zerosdir,osfn)
            f = open(fullpath,"wb")
            data = fn[len(specprefix)+1] * s
            f.write(data)
            f.close()
            
            print >>sys.stderr,"test: Creating",fullpath,fn
            sdef.add_content(fullpath,fn)

        self.specfn = sdef.finalize(self.peers[0].binpath,destdir=self.peers[0].zerosdir)
        f = open(self.specfn,"rb")
        self.spec = f.read()
        f.close()

        self.swarmid = sdef.get_id()
        print >>sys.stderr,"test: setUpPreSession: roothash is",binascii.hexlify(self.swarmid)
        
        self.mfdestfn = os.path.join(self.peers[0].zerosdir,binascii.hexlify(self.swarmid))
        
        print >>sys.stderr,"test: setUpPreSession: copy to",self.mfdestfn
        
        shutil.copyfile(self.specfn,self.mfdestfn)
        shutil.copyfile(self.specfn+".mhash",self.mfdestfn+".mhash")
        shutil.copyfile(self.specfn+".mbinmap",self.mfdestfn+".mbinmap")

        # Start peer1 as VOD downloader
        self.peers[1].destdir = 'clientdump'
        try:
            shutil.rmtree(self.peers[1].destdir)
        except:
            pass
        os.mkdir(self.peers[1].destdir)
        
        #self.peers[1].usegtest = False
        #self.peers[1].binpath = os.path.join("..","Debug","SwiftPPSP.exe")

        #self.peers[0].debug = True
        #self.peers[1].debug = False

        # For CMDGW communication for peer1        
        self.buffer = ''
        self.stop = False
Beispiel #14
0
 def setUpPostSession(self):
     TestAsNPeers.setUpPostSession(self)
Beispiel #15
0
 def setUpPostSession(self):
     TestAsNPeers.setUpPostSession(self)
Beispiel #16
0
    def setUpPreSession(self):
        TestAsNPeers.setUpPreSession(self)

        # Setup peer0 as source
        self.peers[0].destdir = '.'

        #self.peers[0].destdir = tempfile.mkdtemp()
        self.peers[0].zerosdir = os.path.join(os.getcwd(), 'seeddump')
        try:
            shutil.rmtree(self.peers[0].zerosdir)
        except:
            print_exc()
        os.mkdir(self.peers[0].zerosdir)

        print >> sys.stderr, "test: destdir is", self.peers[0].zerosdir

        # Create a multi-file swarm
        self.setUpFileList()

        idx = self.filelist[0][0].find("/")
        specprefix = self.filelist[0][0][0:idx]

        prefixdir = os.path.join(self.peers[0].zerosdir, specprefix)
        os.mkdir(prefixdir)

        sdef = SwiftDef()

        self.vodinputsize = 0L

        # Create content
        for fn, s in self.filelist:
            osfn = fn.replace("/", os.sep)
            fullpath = os.path.join(self.peers[0].zerosdir, osfn)
            f = open(fullpath, "wb")
            data = fn[len(specprefix) + 1] * s
            f.write(data)
            f.close()

            print >> sys.stderr, "test: Creating", fullpath, fn
            sdef.add_content(fullpath, fn)

        self.specfn = sdef.finalize(self.peers[0].binpath,
                                    destdir=self.peers[0].zerosdir)
        f = open(self.specfn, "rb")
        self.spec = f.read()
        f.close()

        self.swarmid = sdef.get_id()
        print >> sys.stderr, "test: setUpPreSession: roothash is", binascii.hexlify(
            self.swarmid)

        self.mfdestfn = os.path.join(self.peers[0].zerosdir,
                                     binascii.hexlify(self.swarmid))

        print >> sys.stderr, "test: setUpPreSession: copy to", self.mfdestfn

        shutil.copyfile(self.specfn, self.mfdestfn)
        shutil.copyfile(self.specfn + ".mhash", self.mfdestfn + ".mhash")
        shutil.copyfile(self.specfn + ".mbinmap", self.mfdestfn + ".mbinmap")

        # Start peer1 as VOD downloader
        self.peers[1].destdir = 'clientdump'
        try:
            shutil.rmtree(self.peers[1].destdir)
        except:
            pass
        os.mkdir(self.peers[1].destdir)

        #self.peers[1].usegtest = False
        #self.peers[1].binpath = os.path.join("..","Debug","SwiftPPSP.exe")

        #self.peers[0].debug = True
        #self.peers[1].debug = False

        # For CMDGW communication for peer1
        self.buffer = ''
        self.stop = False