Changeset 6604


Ignore:
Timestamp:
Jan 17, 2018, 10:07:02 AM (19 months ago)
Author:
hectorgh
Message:

server is the default option, ip will be used afterwards only if it can be calculated

File:
1 edited

Legend:

Unmodified
Added
Removed
  • client-mount/trunk/fuentes/install-files/usr/share/n4d/python-plugins/ClientPamMount.py

    r6601 r6604  
    3030               
    3131                try:
    32                         if os.path.exists(self.pam_skel):
    33                                 self.configure_xml()
     32                        # revert to server first thing, instead of waiting for a 10times timeout
     33                        self.set_address("server")
     34                        # Then try to get server ip
     35                        self.configure_xml()
     36                       
    3437                except Exception as e:
    3538                        print(str(e))
     
    4649        #def uchmod
    4750
     51        def set_address(self,address):
     52               
     53                if os.path.exists(self.pam_skel):
     54                       
     55                        f=open(self.pam_skel)
     56                        tmp,filename=tempfile.mkstemp()
     57                        tmp_file = open(filename,'w')
     58                        for line in f.readlines():
     59                                tmp_file.write(line.replace(self.key,address))
     60                               
     61                        f.close()
     62                        tmp_file.close()
     63                        self.uchmod(filename,0644)
     64                               
     65                        shutil.copy(filename,self.pam_file)
     66                        os.remove(filename)
     67                       
     68                        return True
     69                       
     70                return False
     71               
     72        #def set_address
     73
    4874       
    4975        def configure_xml(self):
     
    5783                        ip=objects["VariablesManager"].get_variable("SRV_IP")
    5884                        if ip != None:
    59                                 f=open(self.pam_skel)
    60                                 tmp,filename=tempfile.mkstemp()
    61                                 tmp_file = open(filename,'w')
    62                        
    63                                 for line in f.readlines():
    64                                         tmp_file.write(line.replace(self.key,ip))
    6585                               
    66                                 f.close()
    67                                 tmp_file.close()
    68                                 self.uchmod(filename,0644)                             
    69 
    70                                 shutil.copy(filename,self.pam_file)
    71                                 os.remove(filename)
    72                                
    73                                 configured=True
     86                                if self.set_address(ip):
     87                                        configured=True
    7488                                break
    7589                               
     
    8296                else:
    8397                        # fallback to 'server'
    84                         f=open(self.pam_skel)
    85                         tmp,filename=tempfile.mkstemp()
    86                         tmp_file = open(filename,'w')
    87                         for line in f.readlines():
    88                                 tmp_file.write(line.replace(self.key,"server"))
    89                                
    90                         f.close()
    91                         tmp_file.close()
    92                         self.uchmod(filename,0644)
    93                                
    94                         shutil.copy(filename,self.pam_file)
    95                         os.remove(filename)
    96                        
    9798                        return {"status":False,"msg":"Fallen back to 'server'"}
    9899
Note: See TracChangeset for help on using the changeset viewer.