| 
      
            Lines 81-87
          class NSUpdateError(UpdateError):
      
      
        Link Here
      
     | 
  
        
          | 81 | 
          def kinit(principal, keytab=None, password_file=None):  | 
          81 | 
          def kinit(principal, keytab=None, password_file=None):  | 
        
        
          | 82 | 
          	auth = '--keytab={tab}' if keytab else '--password-file={file}' | 
          82 | 
          	auth = '--keytab={tab}' if keytab else '--password-file={file}' | 
        
        
          | 83 | 
          	cmd = ('kinit', auth.format(tab=keytab, file=password_file), principal) | 
          83 | 
          	cmd = ('kinit', auth.format(tab=keytab, file=password_file), principal) | 
        
          
            
              | 84 | 
              	MODULE.process('Running: %s' %(''.join(cmd))) | 
              84 | 
              	MODULE.process('Running: %s' %(' '.join(cmd))) | 
            
        
          | 85 | 
           | 
          85 | 
           | 
        
        
          | 86 | 
          	try:  | 
          86 | 
          	try:  | 
        
        
          | 87 | 
          		subprocess.check_call(cmd)  | 
          87 | 
          		subprocess.check_call(cmd)  | 
        
  
    | 
      
            Lines 95-104
          def kinit(principal, keytab=None, password_file=None):
      
      
        Link Here
      
     | 
  
        
          | 95 | 
          def nsupdate(server, domainname):  | 
          95 | 
          def nsupdate(server, domainname):  | 
        
        
          | 96 | 
          	process = subprocess.Popen(('nsupdate', '-g', '-t', '15'), stdin=subprocess.PIPE, | 
          96 | 
          	process = subprocess.Popen(('nsupdate', '-g', '-t', '15'), stdin=subprocess.PIPE, | 
        
        
          | 97 | 
          		stdout=subprocess.PIPE, stderr=subprocess.STDOUT)  | 
          97 | 
          		stdout=subprocess.PIPE, stderr=subprocess.STDOUT)  | 
        
          
            
              | 98 | 
              	cmd = 'server {server}\nprereq yxdomain {domain}\nsend\nquit\n' | 
              98 | 
              	cmd_template = 'server {server}\nprereq yxdomain {domain}\nsend\nquit\n' | 
            
            
               | 
               | 
              99 | 
              	cmd = cmd_template.format(server=server, domain=domainname)  | 
            
        
          | 99 | 
          	MODULE.process("Running: 'echo %s | nsupdate -g -t 15" %(cmd,)) | 
          100 | 
          	MODULE.process("Running: 'echo %s | nsupdate -g -t 15" %(cmd,)) | 
        
        
          | 100 | 
           | 
          101 | 
           | 
        
          
            
              | 101 | 
              	_ = process.communicate(cmd.format(server=server, domain=domainname))  | 
              102 | 
              	_ = process.communicate(cmd)  | 
            
        
          | 102 | 
          	if process.poll() != 0:  | 
          103 | 
          	if process.poll() != 0:  | 
        
        
          | 103 | 
          		raise NSUpdateError(server, domainname)  | 
          104 | 
          		raise NSUpdateError(server, domainname)  | 
        
        
          | 104 | 
           | 
          105 | 
           |