#-*- coding: utf-8 -*- # Copyright 2012 Calculate Ltd. http://www.calculate-linux.org # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import os, datetime from function import get_sid def client_sid(sid, client, cert_id): """ get number session from server and write this in file """ #lang = raw_input ("Enter language (ru, en, de, fr): ") lang = "ru" new_sid = client.service.post_sid(sid = sid, cert_id = cert_id, lang = lang) fi = open(client.SID_FILE, 'w') sid = str(new_sid[0][0]) fi.write(sid) fi.close() if new_sid[0][1] == 1: print _(" New Session") else: print _(" Old Session") print _(" Your session id = %s") %sid def client_del_sid(client): """ delete this session """ sid = get_sid(client.SID_FILE) try: s = client.service.del_sid(sid) if s[0][0] == "-1": print _("No access to file!") return -1 if s[0][0] == "1": print _("Failed to obtain certificate data!") return -2 if s[0][0] == "Permission denied": print _("Permission denied %s") % s[1][1] return -3 if s[0][0] == '0': fi = open(client.SID_FILE, 'w') fi.write('0') fi.close() print _("Sid Deleted!") except: print _("Server delete sid error") return 1 return 0 def sid_inf(client, sid): """ get information about selected session """ s = client.service.sid_info(sid) if s[0][0] == "-1": print _("This session not registered on server!") return -1 if s[0][0] == "-2": print _("Failed to obtain certificate data!") return -2 if s[0][0] == "Permission denied": print _("Permission denied %s") % s[0][1] return -3 print "============================" print _(u"\nSession number - %s") %sid if s[0][5] == "0": print _(u"session is active") else: print _(u"session is inactive") print _(u"Certificate number - %s") %s[0][0] print _(u"Date issue of certificate - %s") %s[0][1] print _(u"ip - %s") %s[0][2] print _(u"MAC - %s") %s[0][3] print _(u"Client type - %s") %s[0][4] print "============================" return 0 def client_session_info(client): """ select session for get information """ sid = raw_input ("SID: ") try: sid = int (sid) except: print _("Error sid") return 1 try: if sid > 0: sid_inf(client, sid) else: print _("Enter correctly sid!") except: print _("Error get data") return 1 return 0