コード例 #1
0
from Crypto.Protocol.KDF import PBKDF2

import scrypt
import getpass

try:
    import syndicate.client.common.log as Log
except:
    import log as Log

try:
    import syndicate.client.storage as storage
except:
    import storage_stub as storage

log = Log.get_logger()

SECRETS_PAD_KEY = "__syndicate_pad__"

# RFC-822 compliant, as long as there aren't any comments in the address.
# taken from http://chrisbailey.blogs.ilrt.org/2013/08/19/validating-email-addresses-in-python/
email_regex_str = r"^(?=^.{1,256}$)(?=.{1,64}@)(?:[^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22(?:[^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(?:\x2e(?:[^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22(?:[^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40(?:[^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|[\x5b](?:[^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*[\x5d])(?:\x2e(?:[^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|[\x5b](?:[^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*[\x5d]))*$"

email_regex = re.compile(email_regex_str)


def is_valid_binary_driver(driver_path, required_syms):
    """
   Does a given path refer to a binary driver with the given symbols?
   """
    try:
コード例 #2
0
ファイル: syntool.py プロジェクト: etherparty/syndicate
import syndicate.util.config as modconf 

import traceback

from Crypto.Hash import SHA256 as HashAlg
from Crypto.PublicKey import RSA as CryptoKey
from Crypto import Random
from Crypto.Signature import PKCS1_PSS as CryptoSigner

import pprint 
import urlparse
import requests 
import getpass

log = Log.get_logger()

# -------------------
def store_syndicate_public_key( config, syndicate_public_key, overwrite=True ):
   assert 'syndicate_host' in config
   assert 'syndicate_port' in config
   assert 'no_tls' in config 
   
   pubkey_name = conf.make_syndicate_pubkey_name( config['syndicate_host'], config['syndicate_port'], config['no_tls'] )
   pubkey_path = conf.object_key_path( config, "syndicate", pubkey_name, no_suffix=True )
   
   return storage.write_key( pubkey_path, syndicate_public_key )


# -------------------
def download_syndicate_public_key( config ):
コード例 #3
0
ファイル: syndicated.py プロジェクト: etherparty/syndicate
            return False 
         
   return True


#-------------------------    
if __name__ == "__main__":
   
   argv = sys.argv
   
   log.setLevel( logging.ERROR )
   
   # early enable debug logging 
   if "-d" in sys.argv or "--debug" in sys.argv:
      import syndicate.client.common.log as Log
      client_log = Log.get_logger()
      
      log.setLevel( logging.DEBUG )
      client_log.setLevel( "DEBUG" )
   
   opt_handlers = {
      "config": lambda arg: load_config_file( arg )
   }
   
   config = modconf.build_config( argv, "Syndicate Automount Daemon", "syndicated", CONFIG_OPTIONS, conf_validator=validate_config, opt_handlers=opt_handlers, config_opt="config" )
   
   if config is None:
      sys.exit(-1)
   
   # sanitize paths 
   for path_opt in ['logdir', 'mountpoint_dir']: