本文整理汇总了Python中pyflag.FlagFramework.get_bt_string方法的典型用法代码示例。如果您正苦于以下问题:Python FlagFramework.get_bt_string方法的具体用法?Python FlagFramework.get_bt_string怎么用?Python FlagFramework.get_bt_string使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyflag.FlagFramework
的用法示例。
在下文中一共展示了FlagFramework.get_bt_string方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: readlink
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
def readlink(self, path):
try:
result = self.fs.readlink(path)
if not result:
raise FuseError("Cannot read symbolic link %s" % path, 2)
return result
except FuseError: raise
except Exception,e:
print "%r: %s" % (e,e)
print FlagFramework.get_bt_string(e)
示例2: readdir
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
def readdir(self, path, offset):
try:
path = os.path.normpath("%s/%s" % (self.root, path))
if not path.endswith('/'): path=path+'/'
for e in self.fs.ls(path=path):
if not e: continue
yield fuse.Direntry(e.encode("utf8"))
except Exception,e:
print "%r: %s" % (e,e)
print FlagFramework.get_bt_string(e)
示例3: getattr
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
def getattr(self, path):
print "Get attr"
try:
path = os.path.normpath("%s/%s" % (self.root, path))
try:
result = self.fs.lstat(path=path)
except RuntimeError,e:
print "Error: %s" % e
print FlagFramework.get_bt_string(e)
raise FuseError("%s Not found" % path, 2)
if not result:
return os.stat_result((16877, 1L, 1, 1, 0, 0, 4096L, 0, 0, 0))
return result
示例4: execute
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
def execute(self):
start_time=time.time()
report,query = self.prepare()
pyflaglog.log(pyflaglog.VERBOSE_DEBUG, "Flash will execute the following query: %s" % query)
## Instantiate the report
report=report(self.environment._flag)
if self.environment._flag.is_cached(query):
## Run the display method
result=TEXTUI.TEXTUI(query=query)
report.display(query,result)
yield result.display()
return
## Execute the report:
try:
report.analyse(query)
try:
dbh = DB.DBO(query['case'])
except KeyError:
dbh = DB.DBO()
canonical_query = FlagFramework.canonicalise(query)
## We call the display method just in case this report
## does something in the display
result=TEXTUI.TEXTUI(query=query)
report.display(query,result)
yield result.display()
dbh.execute("insert into meta set property=%r,value=%r",('report_executed',canonical_query))
yield "Execution of %s successful in %s sec" % (self.args[1],time.time()-start_time)
pyflaglog.log(pyflaglog.VERBOSE_DEBUG, "Flash successfully ran the following query: %s" % query)
except Exception,e:
pyflaglog.log(pyflaglog.WARNING, "Flash encountered the following error: %s when running query: %s" % (e,query))
print FlagFramework.get_bt_string(e)
raise
raise RuntimeError("%s: %s after %s sec" % (sys.exc_info()[0],sys.exc_info()[1],time.time()-start_time))
示例5: except
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
self.mass_insert_commit()
self.cursor.ignore_warnings = False
##key = "%s/%s" % (self.case, threading.currentThread().getName())
key = "%s" % (self.case)
if self.DBH and not self.discard:
pool = self.DBH.get(key)
pool.put(self.dbh)
except (TypeError,AssertionError,AttributeError, KeyError),e:
#print "dbh desctrucr: %s " % e
pass
except Exception,e:
import pyflag.FlagFramework as FlagFramework
print FlagFramework.get_bt_string(e)
class DirectDBO(PooledDBO):
""" A class which just makes a new connection for each handle """
dbh = None
def get_dbh(self, case):
try:
self.dbh = mysql_connect(case)
except Exception,e:
## We just failed to connect - i bet the cached variables
## are totally wrong - invalidate the cache:
global mysql_connection_args
mysql_connection_args = None
raise DBError("Unable to connects - does the DB Exist?: %s" % e)
示例6: load
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
#.........这里部分代码省略.........
'src_port':colns[14]
}
inserted.update(directions)
else:
print "Didn't understand Built connection message, unable to insert line id %s: %s: %s" % (count, line)
#Clear so we don't insert a duplicate of the last line
inserted=None
#TCP teardown
#e.g. %PIX-6-302014: Teardown TCP connection 323796 for outside:192.168.0.1/63847 to inside:192.168.3.1/28905 duration 0:00:01 bytes 398 TCP FINs
#Doco says bytes is "for the connection" which I'm assuming means two-way.
#Unfortunately tcp teardowns suffer from the same stupid reversing as built connections (see above) HOWEVER, there is no direction flag, which means I am just guessing based on the port number range which direction it is going.
elif columns[9].startswith("Teardown"):
inserted={
'id':count,
'pix_ts':pix_ts,
'protocol':colns[1],
'conn_number':colns[3],
'duration':":".join(colns[13:16]),
'bytes':colns[17],
'action':'tcp teardown',
'src_if':colns[5],
'src_host':colns[6],
'src_port':colns[7],
'dst_if':colns[9],
'dst_host':colns[10],
'dst_port':colns[11],
}
#Access List info
#%PIX-6-106100: access-list outside_access_in permitted tcp outside/192.168.0.1(6666) -> inside/192.168.3.1(22) hit-cnt 1 (first hit)
elif columns[9].startswith("access-list"):
inserted={
'id':count,
'pix_ts':pix_ts,
'direction':colns[6],
'protocol':colns[3],
'conn_number':0,
'src_if':colns[4],
'src_host':colns[5].split("(")[0],
'src_port':colns[5].split("(")[1][:-1],
'dst_if':colns[7],
'dst_host':colns[8].split("(")[0],
'dst_port':colns[8].split("(")[1][:-1],
'duration':0,
'bytes':0,
'rule':" ".join(colns[0:3])+": "+" ".join(colns[9:]),
'action':'access-list',
}
#File stored
#%PIX-6-303002: 192.168.0.1 Stored 192.168.3.1:filename.ext
#This code can actually be FTP stored or retrieved.
elif colns[1].startswith("Stored"):
inserted={
'id':count,
'pix_ts':pix_ts,
'direction':'',
'protocol':'',
'conn_number':0,
'src_if':'',
'src_host':colns[0],
'src_port':0,
'dst_if':'',
'dst_host':colns[2],
'dst_port':0,
'duration':0,
'bytes':0,
'rule':colns[3],
'action':'stored-file',
}
#You could explicitly ignore some types here, I just have one of the really noisy, not particularly interesting ones excluded.
#New security association. Appears to be specific to 6.something Pixes.
#%PIX-6-602301: sa created, (sa) sa_dest= 192.168.0.1, sa_prot= 50, sa_spi= 0x888ddddd(9999999999), sa_trans= esp-3des esp-md5-hmac , sa_conn_id= 8\n
## (" ".join(colns[0:2]).startswith("sa created"))
#Delete security association. Appears to be specific to 6.something Pixes.
#%PIX-6-602302: deleting SA, (sa) sa_dest= 192.168.0.1, sa_prot= 50, sa_spi= 0x888ddddd(9999999999), sa_trans= esp-3des esp-md5-hmac , sa_conn_id= 6\n
## (" ".join(colns[0:2]).startswith("deleting SA"))
#%PIX-6-602201: ISAKMP Phase 1 SA created (local 192.168.0.1/500 (responder), remote myhost/500, authentication=pre-share, encryption=3DES-CBC, hash=MD5, group=2, lifetime=86400s)
# (colns[0].startswith("ISAKMP"))
#Appears after a TCP connection restarts. x in use indicates the current number of connections.
#%PIX-6-302010: 1 in use, 399 most used.
elif (" ".join(colns[1:3]).startswith("in use")):
inserted=None
else:
print "Unable to insert line id %s: %s" % (count, line)
#Clear so we don't insert a duplicate of the last line
inserted=None
except Exception,e:
print "Unable to insert line id %s: %s: %s" % (count, line,e)
print FlagFramework.get_bt_string(e)
示例7: reset
# 需要导入模块: from pyflag import FlagFramework [as 别名]
# 或者: from pyflag.FlagFramework import get_bt_string [as 别名]
cb[name] = render_HTMLUI
count+=1
except KeyError:
pass
try:
result.table(
names= names,
columns = names,
callbacks = cb,
table = "reveng",
headers=popup_row,
case = query['case'],
valign="top"
)
except IndexError, e:
print "Index Error: %s" % e
except DB.DBError, e:
print "DB Error: %s" % e
except KeyError,e:
result.case_selector()
print "%r%s%s" %(e,e,FlagFramework.get_bt_string(e))
result.end_form()
def reset(self, query):
dbh = self.DBO(query['case'])
dbh.execute("drop table reveng")