[Ocfs2-tools-devel] [PATCH 4/8] dump.py: remove lvb parser

Jeff Liu jeff.liu at oracle.com
Thu Aug 20 08:23:47 PDT 2009


LVB format was changed in wireshark dissector, remove it from odump.py as well.

Signed-off-by: Jeff Liu <jeff.liu at oracle.com>
---
 ADDONS/odump.py |  134 +++++++------------------------------------------------
 1 files changed, 16 insertions(+), 118 deletions(-)

diff --git a/ADDONS/odump.py b/ADDONS/odump.py
index ee78c60..c098790 100755
--- a/ADDONS/odump.py
+++ b/ADDONS/odump.py
@@ -36,82 +36,8 @@ TYPE_ABB = ('MSRT', 'MSG1', 'ASRT', 'CRLK', 'CNLK', 'BAST',  \
             'ASRJ', 'CANJ', 'EXTD', 'MSRY', 'LKRT', 'REDD',  \
             'REBG', 'REFN')
 
-LVBFUNC = ('ConvertLockMsg', 'UnlockLockMsg', 'ProxyASTMsg', 'MigrateLockresMsg')
-
-
 NAME_IN_SHORT = lambda x, y: y in x.keys() and x[y] or 'None'
 
-def getLVB(payload, fmtstr='<%s>'):
-    '''
-	guint32 oldseq;
-        guint32 version;
-        guint32 clusters;
-        guint32 uid;
-        guint32 gid;
-        guint16 mode;
-        guint16 nlink;
-        guint64 raw_atime;
-        guint64 raw_ctime;
-        guint64 raw_mtime;
-        guint64 size;
-        guint32 reserved1;
-        guint32 reserved2;
-        struct passwd *pw;
-        struct group *gr;
-        guint off = offset;
-        struct tm t_atime, t_ctime, t_mtime;
-        char atime_buf[32];
-        char ctime_buf[32];
-        char mtime_buf[32];
-        proto_item *item;
-        const char *modestr = "unknown";
-    '''
-
-    lvbstr = ''
-
-    if payload.has_key('clusters'):
-        clusters = payload['clusters'][0].strip()
-        lvbstr = lvbstr + 'cluster=' + clusters + ' '
-
-    if payload.has_key('uid'):
-        uid = string.split(payload['uid'][0].strip(), ' ')[0]
-        lvbstr = lvbstr + 'uid=' + uid + ' '
-
-    if payload.has_key('gid'):
-        gid = string.split(payload['gid'][0].strip(), ' ')[0]
-        lvbstr = lvbstr + 'gid=' + gid + ' '
-
-    if payload.has_key('mode'):
-        mode = string.split(payload['mode'][0].strip(), ' ')[0]
-        lvbstr = lvbstr + 'mode=' + mode + ' '
-
-    if payload.has_key('nlink'):
-        nlink = payload['nlink'][0].strip()
-        lvbstr = lvbstr + 'nlink=' + nlink + ' '
-
-    if payload.has_key('atime'):
-        atime = string.split(payload['atime'][0].strip(), ' ')[0]
-        lvbstr = lvbstr + 'atime=' + atime + ' '
-
-    if payload.has_key('ctime'):
-        ctime = string.split(payload['ctime'][0].strip(), ' ')[0]
-        lvbstr = lvbstr + 'ctime=' + ctime + ' '
-
-    if payload.has_key('mtime'):
-        mtime = string.split(payload['mtime'][0].strip(), ' ')[0]
-        lvbstr = lvbstr + 'mtime=' + mtime + ' '
-
-    if payload.has_key('size'):
-        size = payload['size'][0].strip()
-        lvbstr = lvbstr + 'size=' + size + ' '
-
-    if payload.has_key('OVR2'):
-        ovlist = ' '.join(string.split(payload['OVR2'], ','))
-        lvbstr = lvbstr + ovlist
-            
-    return fmtstr % lvbstr
-
-
 FRAME_FMT = '#%s '
 TIME_FMT = '%s/%s/%s %s '
 IP_FMT = '(%s) {%s} '
@@ -279,11 +205,9 @@ def MasterRequeryMsg(odict, fmtstr=NODEIDX_FMT + NAME_FMT):
 
 COOKIE_FMT = 'C=%s '
 REQTYPE_FMT = 'T=%s '
-LVB_FMT = '%s '
-def ConvertLockMsg(odict,   \
-		   dumplvb, \
-		   fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT + REQTYPE_FMT + NAME_FMT):
-    ''' returns cookie; flags; node_idx; requested_type; name; lvb(optional) '''
+def ConvertLockMsg(odict, fmtstr=COOKIE_FMT + FLAGS_FMT + \
+                    NODEIDX_FMT + REQTYPE_FMT + NAME_FMT):
+    ''' returns cookie; flags; node_idx; requested_type; name; '''
 
     if odict.has_key('Cookie'):
         cookie = odict['Cookie'][0].strip()
@@ -310,10 +234,6 @@ def ConvertLockMsg(odict,   \
     else:
         name = ' '
 
-    # FIXME!! for LVB, all entries start from Name 
-    if dumplvb:
-        fmstr = fmtstr + LVB_FMT
-
     return fmtstr % (cookie, flags, nodeidx, reqtype, name)
 
 def CreateLockMsg(odict, fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT + REQTYPE_FMT + NAME_FMT):
@@ -347,8 +267,9 @@ def CreateLockMsg(odict, fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT + REQTYPE_F
 
     return fmtstr % (cookie, flags, nodeidx, reqtype, name)
 
-def UnlockLockMsg(odict, dumplvb, fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT + NAME_FMT):
-    ''' cookie; flags; node_idx; name; lvb(optional_DLM_LVB_LEN)'''
+def UnlockLockMsg(odict, fmtstr=COOKIE_FMT + FLAGS_FMT + \
+                    NODEIDX_FMT + NAME_FMT):
+    ''' cookie; flags; node_idx; name; '''
 
     if odict.has_key('Cookie'):
         cookie = odict['Cookie'][0].strip()
@@ -370,18 +291,11 @@ def UnlockLockMsg(odict, dumplvb, fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT +
     else:
         name = ' '
 
-    # FIXME!! for LVB, all entries start from Name
-    if dumplvb:
-        fmtstr = fmtstr + LVB_FMT
-        lvb = getLVB(odict)
-        print lvb
-        return fmtstr % (cookie, flags, nodeidx, name, lvb)
-
     return fmtstr % (cookie, flags, nodeidx, name)
 
 BLKT_FMT = "B=%s "
-
-def ProxyASTMsg(odict, dumplvb, fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT + BLKT_FMT + NAME_FMT):
+def ProxyASTMsg(odict, fmtstr=COOKIE_FMT + FLAGS_FMT + \
+                NODEIDX_FMT + BLKT_FMT + NAME_FMT):
 
     if odict.has_key('Cookie'):
         cookie = odict['Cookie'][0].strip()
@@ -408,12 +322,6 @@ def ProxyASTMsg(odict, dumplvb, fmtstr=COOKIE_FMT + FLAGS_FMT + NODEIDX_FMT + BL
     else:
         name = ' '
 
-    # All entries start from Name
-    if dumplvb:
-        fmtstr = fmtstr + LVB_FMT
-        lvb = getLVB(odict)
-        return fmtstr % (cookie, flags, nodeidx, blktype, name, lvb)
-
     return fmtstr % (cookie, flags, nodeidx, blktype, name)
 
 # node_idx name_len domain
@@ -449,9 +357,9 @@ def MigrateRequestMsg(odict, fmtstr=' '):
     ''' master; new_master; name'''
     return ' '
 
-def MigrateLockresMsg(odict, dumplvb, fmtstr=''):
+def MigrateLockresMsg(odict, fmtstr=''):
     ''' master; num_locks; flags; total_locks; mig_cookie; 
-        lockname; lvb(DLM_LVB_LEN); struct dlm_migratble_lock '''
+        lockname; struct dlm_migratble_lock '''
     return ' '
 
 DNODE_FMT = "D=%s "
@@ -622,13 +530,6 @@ def option_parse():
                 default="all",
                 )
 
-    p.add_option('-L', '--print-lvb', 
-                dest='dumplvb',
-                help="turn on LVB printing, do not print LVB by default",
-                default=False,
-                action='store_true',
-                )
-
     p.add_option('-v', '--verbose',
                 dest='verbose',
                 help="Enable printing of status messages to stdout, disabled by default",
@@ -638,7 +539,7 @@ def option_parse():
     
     options, args = p.parse_args()
 
-    return options.file, options.output, options.type, options.dumplvb, options.verbose
+    return options.file, options.output, options.type, options.verbose
 
 def getfh(srcfile, dstfile):
     if srcfile is None:
@@ -661,7 +562,7 @@ def getfh(srcfile, dstfile):
 
     return sfp, dfp
 
-def main(srcfile, dstfile, o2type, dumplvb, verbose):
+def main(srcfile, dstfile, o2type, verbose):
     packets = []
     while True: 
         line = sfp.readline()
@@ -723,12 +624,9 @@ def main(srcfile, dstfile, o2type, dumplvb, verbose):
 
         o2msgstr = ''
         try:
-	    if func in LVBFUNC:
-	        o2msgstr = globals()[func](ocfs2payload, dumplvb)
-            else:
-	        o2msgstr = globals()[func](ocfs2payload)
+	    o2msgstr = globals()[func](ocfs2payload)
         except KeyError: # DLM message do not support encountered
-	    sys.stderr.write('can not handle %s Message' %  func)
+	    sys.stderr.write('can not handle %s message' %  func)
 
         try:
 	    o2header = ocfs2dict['o2header']
@@ -748,8 +646,8 @@ def main(srcfile, dstfile, o2type, dumplvb, verbose):
 
 if __name__ == '__main__':
 
-    srcfile, dstfile, o2msgtype, dumplvb, verbose = option_parse()
+    srcfile, dstfile, o2msgtype, verbose = option_parse()
 
     sfp, dfp = getfh(srcfile, dstfile)
       
-    main(sfp, dfp, o2msgtype, dumplvb, verbose)
+    main(sfp, dfp, o2msgtype, verbose)
-- 
1.5.4.3




More information about the Ocfs2-tools-devel mailing list