def pickRcondorSubmissionHost(self, task): task = common._db.getTask() if task['serverName'] != None and task['serverName'] != "": # rcondorHost is already defined and stored for this task # so pick it from DB # cast to string to avoid issues with unicode :-( rcondorUserHost = str(task['serverName']) common.logger.info("serverName from Task DB is %s" % rcondorUserHost) if '@' in rcondorUserHost: rcondorHost = rcondorUserHost.split('@')[1] else: rcondorHost = rcondorUserHost else: if self.cfg_params.has_key('CRAB.submit_host'): # get an rcondor host from crab config file srvCfg = ServerConfig( self.cfg_params['CRAB.submit_host']).config() rcondorHost = srvCfg['serverName'] common.logger.info("rcondorhost from crab.cfg = %s" % rcondorHost) else: # pick from Available Servers List srvCfg = ServerConfig('default').config() print srvCfg rcondorHost = srvCfg['serverName'] common.logger.info("rcondorhost from Avail.List = %s" % rcondorHost) if not rcondorHost: raise CrabException('FATAL ERROR: condorHost not defined') # fall back to env. #common.logger.info("no serverName in Task DB, use env.var.") #rcondorHost = os.getenv('RCONDOR_HOST') #if not rcondorHost : # raise CrabException('FATAL ERROR: env.var RCONDOR_HOST not defined') #rcondorUser = os.getenv('RCONDOR_USER') #if not rcondorUser : common.logger.info("try to find out RCONDOR_USER via uberftp ...") command = "uberftp %s pwd|grep User|awk '{print $3}'" % rcondorHost (status, output) = commands.getstatusoutput(command) if status == 0: rcondorUser = output common.logger.info("rcondorUser set to %s" % rcondorUser) if rcondorUser == None: raise CrabException( 'FATAL ERROR: RCONDOR_USER not defined') rcondorUserHost = rcondorUser + '@' + rcondorHost print "will set server name to : ", rcondorUserHost common._db.updateTask_({'serverName': rcondorUserHost}) return (rcondorHost, rcondorUserHost)
def __init__(self): self.long = 8 self.sets = ServerConfig.Sets() self.name = ServerInfo.Info('name').get_info() self.ver = ServerInfo.Info('ver').get_info() self.form = ServerInfo.Info('about').get_info() self.auth = ServerInfo.Info('by').get_info() self.mail = ServerInfo.Info('mail').get_info() self.remode = ServerInfo.Info('remode').get_info() self.conf = ServerConfig.conf self.noyes = [ru('No'), ru('Yes')] self.version = [ru('Default'), ru('HTTP/1.0'), ru('HTTP/1.1')] self.method = [ru('HEAD'), ru('GET'), ru('POST'), ru('DELETE'), ru('CONNECT'), ru('OPTIONS'), ru('TRACE'), ru('PUT')] self.line = [ru('\\r\\n'), ru('\\n')] self.split = [ru('Default'), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE))]
def token(): if request.args.get('token'): token = request.args.get('token') tkn = r.hgetall(token) if tkn is not None: sessionid = generateUuid('sessionid') print sessionid r.hmset(token, {'sessionid': sessionid, 'app_code': ServerConfig.get('app_code')}) res = make_response() res.set_cookie('sessionid', value=sessionid, domain=uc_domain, expires=uc_expires) return (res, json.dumps({'result': True, 'msg': 'token permit'})) return json.dumps({'result': False, 'msg': 'token expires or illegal'}) return json.dumps({'result': False, 'msg': 'no token'})
def pickRemoteSubmissionHost(self, task): task = common._db.getTask() if task['serverName'] != None and task['serverName'] != "": # remoteHost is already defined and stored for this task # so pick it from DB # cast to string to avoid issues with unicode :-( remoteUserHost = str(task['serverName']) common.logger.info("serverName from Task DB is %s" % remoteUserHost) else: if self.cfg_params.has_key('CRAB.submit_host'): # get a remote submission host from crab config file srvCfg = ServerConfig( self.cfg_params['CRAB.submit_host']).config() remoteUserHost = srvCfg['serverName'] common.logger.info("remotehost from crab.cfg = %s" % remoteUserHost) else: # pick from Available Servers List srvCfg = ServerConfig('default').config() remoteUserHost = srvCfg['serverName'] common.logger.info("remotehost from Avail.List = %s" % remoteUserHost) if not remoteUserHost: raise CrabException('FATAL ERROR: remoteHost not defined') if '@' in remoteUserHost: remoteHost = remoteUserHost.split('@')[1] else: remoteHost = remoteUserHost common._db.updateTask_({'serverName': remoteUserHost}) return (remoteHost, remoteUserHost)
def setServerConfigInfo(self): with open("chatserver.conf", "r", encoding="utf-8") as serverFile: size_to_read = 100 f_contents = serverFile.readline(size_to_read) args_list = f_contents.split() host = args_list[1] f_contents = serverFile.readline(size_to_read) args_list = f_contents.split() port = args_list[1] dbpath = serverFile.readline(size_to_read).split()[1] ports = serverFile.readline(size_to_read).split()[2] list_of_ports = ports.split(',') return ServerConfig(host, port, dbpath, list_of_ports)
def __init__(self): self.long = 18 self.sets = ServerConfig.Sets() self.noyes = [ru('No'), ru('Yes')] self.version = [ru('Default'), ru('HTTP/1.0'), ru('HTTP/1.1')] self.method = [ru('HEAD'), ru('GET'), ru('POST'), ru('DELETE'), ru('CONNECT'), ru('OPTIONS'), ru('TRACE'), ru('PUT')] self.line = [ru('\\r\\n'), ru('\\n')] self.split = [ru('Default'), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE)), ru('%s' % (self.line[self.sets.ILINE] * self.sets.ILINE))]
def __init__(self): self.sets = ServerConfig.Sets() self.host = [] for server in self.sets.KEEP.split('|'): if server: self.host.append(server)
def ServerUpdate(): global sets sets = ServerConfig.Sets()
#ServerHanlder.py import sys import select import socket import random import urlparse import ServerInfo import ServerConfig import ServerSocks import SocketServer import BaseHTTPServer ra = lambda text: text.decode('ascii', 'ignore') sets = ServerConfig.Sets() logs = False def ServerUpdate(): global sets sets = ServerConfig.Sets() def LogWindow(flag=False): global logs logs = flag class QueryHandler(): def __init__(self, command='', path='/',
#!/usr/bin/env python # encoding: utf-8 from flask import Flask, request, render_template, url_for, make_response, redirect import redis import uuid import requests import ServerConfig import json app = Flask(__name__) r = redis.StrictRedis(host='localhost', port=6379, db=0, password=123) token_expires = ServerConfig.get('token_expires') uc_expires = ServerConfig.get('uc_expires') uc_domain = ServerConfig.get('uc_domain') app_code = ServerConfig.get('app_code') # ############# Helper Function #################### def generateUuid(code_for): token = str(uuid.uuid3(uuid.uuid1(), str(code_for)).hex) return token # ############# Token/GlobalSession Manager ############### class TokenUtil: def setToken(self, uc_token, TokenInfo): uc_token = 'token:' + uc_token r.hmset(uc_token, TokenInfo) return r.expire(uc_token, token_expires)
import TcpServer import ThreadedTcpServer import ServerConfig import os # os.path.dirname(__file__) gets the current directory of this file # os.path.join is a function that joins the strings to form a correct file path CONFIG_FILE = os.path.join(os.path.dirname(__file__), 'server_config.json') if __name__ == '__main__': config = ServerConfig.ServerConfig(CONFIG_FILE) server = None # None is the Python equivalent to null if config.use_multithreaded: server = ThreadedTcpServer.ThreadedTcpServer(config.port, config.host, config.block_list) else: server = TcpServer.TcpServer(config.port, config.host, config.block_list) server.listen()