Exemplo n.º 1
0
	def testAll(self):
		unencoded = "This is a test string"
		encoded = encrypt(unencoded)
		self.assert_(unencoded != encoded)

		decoded = decrypt(encoded)
		self.assert_(decoded == unencoded)
Exemplo n.º 2
0
def check_license():
	sess = get_controller_session()
	try:
		license = eval(decrypt(hqconfig.config.get("info","license")))
	except:
		log_error("License exception, do you have a license on file?")
		reactor.stop()
		return
	log_info("License info :", license)
	if float(hqconfig.pulse_interval) < float(license["pulse"]):
		log_error("Pulse is too low, minimum pulse is ", license["pulse"], " your pulse is set to ", hqconfig.pulse_interval)
		hqconfig.pulse_interval = float(license["pulse"])
	if "expiration" in license:
		if datetime.now() > datetime.strptime(license["expiration"], "%Y-%m-%d %H:%M:%S.%f"):
			log_error("This license expired on ", license["expiration"], " please contact support")
			reactor.stop()
			return
	if sess.query(server).filter(server.TYPE == 0).count() > license["controllers"]:
		log_error("Too many controllers on file, exiting")
		try:
			s = sess.query(server).filter(server.SERVERID == hqconfig.myname).one()
			sess.delete(s)
			sess.flush()
		except:
			pass
		sys.exit(0)
	s_count = sess.query(server).filter(and_(server.TYPE == 1, server.STARTED == True)).count()
	if s_count > license["agents"]:
		for s in sess.query(server).filter(and_(server.TYPE == 1, server.STARTED == True)).all()[:s_count-license["agents"]]:
			log_error("Too many Agents on file, deleting ", s)
			sess.delete(s)
		sess.flush()

	reactor.callLater(600, check_license)