From: jiyin@redhat.com
To: bfields@redhat.com
Cc: linux-nfs@vger.kernel.org, "Jianhong.Yin" <yin-jianhong@163.com>
Subject: [PATCH 06/24] pynfs: python3 support plan: octal literal 0644 -> 0o644
Date: Tue, 24 Jul 2018 15:33:24 +0800 [thread overview]
Message-ID: <20180724073342.5738-6-jiyin@redhat.com> (raw)
In-Reply-To: <20180724073342.5738-1-jiyin@redhat.com>
From: "Jianhong.Yin" <yin-jianhong@163.com>
s/\<0([0-9]{3})\>/0o\1/g
s/\<0([0-9]{2})\>/0o\1/g
Signed-off-by: Jianhong Yin <yin-jianhong@163.com>
---
nfs4.0/nfs4acl.py | 8 ++++----
nfs4.0/nfs4lib.py | 10 +++++-----
nfs4.0/nfs4state.py | 4 ++--
nfs4.0/servertests/st_close.py | 4 ++--
nfs4.0/servertests/st_create.py | 2 +-
nfs4.0/servertests/st_delegation.py | 2 +-
nfs4.0/servertests/st_lock.py | 2 +-
nfs4.0/servertests/st_locku.py | 2 +-
nfs4.0/servertests/st_lookup.py | 10 +++++-----
nfs4.0/servertests/st_open.py | 18 +++++++++---------
nfs4.0/servertests/st_read.py | 4 ++--
nfs4.0/servertests/st_readdir.py | 8 ++++----
nfs4.0/servertests/st_reboot.py | 4 ++--
nfs4.0/servertests/st_setattr.py | 18 +++++++++---------
nfs4.0/servertests/st_write.py | 16 ++++++++--------
nfs4.1/client41tests/environment.py | 8 ++++----
nfs4.1/dataserver.py | 6 +++---
nfs4.1/fs.py | 2 +-
nfs4.1/nfs4client.py | 2 +-
nfs4.1/server41tests/environment.py | 14 +++++++-------
nfs4.1/server41tests/st_lookup.py | 4 ++--
21 files changed, 74 insertions(+), 74 deletions(-)
diff --git a/nfs4.0/nfs4acl.py b/nfs4.0/nfs4acl.py
index 91a0316..b7f033e 100644
--- a/nfs4.0/nfs4acl.py
+++ b/nfs4.0/nfs4acl.py
@@ -66,9 +66,9 @@ def mode2acl(mode, dir=False):
"""Translate a 3-digit octal mode into a posix compatible acl"""
if dir: modes = DMODES
else: modes = MODES
- owner = modes[(mode & 0700)//0100] | FLAG_ALL | FLAG_OWN
- group = modes[(mode & 0070)//010] | FLAG_ALL
- other = modes[(mode & 0007)] | FLAG_ALL
+ owner = modes[(mode & 0o700)//0o100] | FLAG_ALL | FLAG_OWN
+ group = modes[(mode & 0o070)//0o10] | FLAG_ALL
+ other = modes[(mode & 0o007)] | FLAG_ALL
return [ nfsace4(ALLOWED, 0, owner, "OWNER@"),
nfsace4(DENIED, 0, negate(owner), "OWNER@"),
@@ -102,7 +102,7 @@ def acl2mode(acl):
for key in perms:
if perms[key] is None:
perm[keys] = 0
- return perms["OWNER@"]*0100 + perms["GROUP@"]*010 + perms["EVERYONE@"]
+ return perms["OWNER@"]*0o100 + perms["GROUP@"]*0o10 + perms["EVERYONE@"]
def maps_to_posix(acl):
"""Raises ACLError if acl does not map to posix """
diff --git a/nfs4.0/nfs4lib.py b/nfs4.0/nfs4lib.py
index d255eb7..5c9e853 100644
--- a/nfs4.0/nfs4lib.py
+++ b/nfs4.0/nfs4lib.py
@@ -463,7 +463,7 @@ class NFS4Client(rpc.RPCClient):
return self.compound(ops)
def open(self, owner, name=None, type=OPEN4_NOCREATE,
- mode=UNCHECKED4, attrs={FATTR4_MODE:0644}, verf=None,
+ mode=UNCHECKED4, attrs={FATTR4_MODE:0o644}, verf=None,
access=OPEN4_SHARE_ACCESS_READ,
deny=OPEN4_SHARE_DENY_WRITE,
claim_type=CLAIM_NULL, deleg_type=None, deleg_cur_info=None):
@@ -568,7 +568,7 @@ class NFS4Client(rpc.RPCClient):
for e in entries:
# We separate setattr and remove to avoid an inode locking bug
ops = [op4.putfh(fh), op4.lookup(e.name)]
- ops += [op4.setattr(stateid, {FATTR4_MODE:0755})]
+ ops += [op4.setattr(stateid, {FATTR4_MODE:0o755})]
res = self.compound(ops)
check_result(res, "Making sure %s is writable" % repr(e.name))
ops = [op4.putfh(fh), op4.remove(e.name)]
@@ -589,7 +589,7 @@ class NFS4Client(rpc.RPCClient):
d = self.do_getattrdict([], [FATTR4_LEASE_TIME])
return d[FATTR4_LEASE_TIME]
- def create_obj(self, path, type=NF4DIR, attrs={FATTR4_MODE:0755},
+ def create_obj(self, path, type=NF4DIR, attrs={FATTR4_MODE:0o755},
linkdata="/etc/X11"):
if __builtins__['type'](path) is str:
path = self.homedir + [path]
@@ -613,7 +613,7 @@ class NFS4Client(rpc.RPCClient):
ops += [op4.rename(oldpath[-1], newpath[-1])]
return self.compound(ops)
- def create_file(self, owner, path=None, attrs={FATTR4_MODE: 0644},
+ def create_file(self, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_WRITE,
mode=UNCHECKED4, verifier=None,
@@ -702,7 +702,7 @@ class NFS4Client(rpc.RPCClient):
return (fhandle, stateid)
- def create_confirm(self, owner, path=None, attrs={FATTR4_MODE: 0644},
+ def create_confirm(self, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_WRITE,
mode=GUARDED4):
diff --git a/nfs4.0/nfs4state.py b/nfs4.0/nfs4state.py
index 484a284..180e642 100755
--- a/nfs4.0/nfs4state.py
+++ b/nfs4.0/nfs4state.py
@@ -953,7 +953,7 @@ class VirtualHandle(NFSFileHandle):
if self.fattr4_type == NF4DIR:
self.dirent = DirList()
- self.fattr4_mode = 0755
+ self.fattr4_mode = 0o755
if self.fattr4_type == NF4REG:
self.file = StringIO.StringIO()
self.state = NFSFileState()
@@ -987,7 +987,7 @@ class VirtualHandle(NFSFileHandle):
self.fattr4_maxname = 128 # Are these enforced?
self.fattr4_maxread = 1000 # Are these enforced?
self.fattr4_maxwrite = 1000 # Are these enforced?
- self.fattr4_mode = 0644 # Currently no access restrictions enforced
+ self.fattr4_mode = 0o644 # Currently no access restrictions enforced
self.fattr4_acl = nfs4acl.mode2acl(self.fattr4_mode,
self.fattr4_type == NF4DIR)
self.fattr4_numlinks = 1 # Updated? - Yes
diff --git a/nfs4.0/servertests/st_close.py b/nfs4.0/servertests/st_close.py
index 1690fad..89ccbba 100644
--- a/nfs4.0/servertests/st_close.py
+++ b/nfs4.0/servertests/st_close.py
@@ -110,7 +110,7 @@ def testTimedoutClose1(t, env):
sleeptime = c.getLeaseTime() * 2
c.init_connection()
fh, stateid = c.create_confirm(t.code, deny=OPEN4_SHARE_DENY_WRITE,
- attrs={FATTR4_MODE: 0666})
+ attrs={FATTR4_MODE: 0o666})
env.sleep(sleeptime)
# Conflicting open should force server to drop state
c2 = env.c2
@@ -132,7 +132,7 @@ def testTimedoutClose2(t, env):
sleeptime = c.getLeaseTime() * 2
c.init_connection()
fh, stateid = c.create_confirm(t.code, deny=OPEN4_SHARE_DENY_WRITE,
- attrs={FATTR4_MODE: 0666})
+ attrs={FATTR4_MODE: 0o666})
res = c.lock_file(t.code, fh, stateid)
check(res)
env.sleep(sleeptime)
diff --git a/nfs4.0/servertests/st_create.py b/nfs4.0/servertests/st_create.py
index ac57aaf..c7256e5 100644
--- a/nfs4.0/servertests/st_create.py
+++ b/nfs4.0/servertests/st_create.py
@@ -8,7 +8,7 @@ def getDefaultAttr(c):
attr = {}
#attr[FATTR4_OWNER] = c.security.get_owner()
#attr[FATTR4_OWNER_GROUP] = c.security.get_group()
- attr[FATTR4_MODE] = 0755
+ attr[FATTR4_MODE] = 0o755
return attr
def _test_create(t, env, type, name, **keywords):
diff --git a/nfs4.0/servertests/st_delegation.py b/nfs4.0/servertests/st_delegation.py
index 8e0d891..937d95f 100644
--- a/nfs4.0/servertests/st_delegation.py
+++ b/nfs4.0/servertests/st_delegation.py
@@ -706,7 +706,7 @@ def testServerChmod(t, env):
c.init_connection('pynfs%i_%s' % (os.getpid(), t.code), cb_ident=0)
c.create_confirm(t.code, path=c.homedir + [t.code + '-2'])
_get_deleg(t, c, c.homedir + [t.code], _recall, NFS4_OK)
- env.serverhelper("chmod 0777 " + _listToPath(c.homedir + [t.code]))
+ env.serverhelper("chmod 0o777 " + _listToPath(c.homedir + [t.code]))
_verify_cb_occurred(t, c, count)
def testServerSelfConflict(t, env):
diff --git a/nfs4.0/servertests/st_lock.py b/nfs4.0/servertests/st_lock.py
index 1cdbea3..060236a 100644
--- a/nfs4.0/servertests/st_lock.py
+++ b/nfs4.0/servertests/st_lock.py
@@ -529,7 +529,7 @@ def testReadLocks2(t, env):
file = c1.homedir + [t.code]
# Client1 creates a file
fh1, stateid1 = c1.create_confirm('owner1', file,
- attrs={FATTR4_MODE: 0666},
+ attrs={FATTR4_MODE: 0o666},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE)
# Client2 opens the file
diff --git a/nfs4.0/servertests/st_locku.py b/nfs4.0/servertests/st_locku.py
index 3006445..74b464a 100644
--- a/nfs4.0/servertests/st_locku.py
+++ b/nfs4.0/servertests/st_locku.py
@@ -256,7 +256,7 @@ def testTimedoutUnlock(t, env):
c = env.c1
sleeptime = c.getLeaseTime() * 3 // 2
c.init_connection()
- fh, stateid = c.create_confirm(t.code, attrs={FATTR4_MODE: 0666})
+ fh, stateid = c.create_confirm(t.code, attrs={FATTR4_MODE: 0o666})
res1 = c.lock_file(t.code, fh, stateid)
check(res1)
env.sleep(sleeptime)
diff --git a/nfs4.0/servertests/st_lookup.py b/nfs4.0/servertests/st_lookup.py
index cd1b93c..a57d4cb 100644
--- a/nfs4.0/servertests/st_lookup.py
+++ b/nfs4.0/servertests/st_lookup.py
@@ -206,7 +206,7 @@ def testNonAccessable(t, env):
DEPEND: MKDIR
CODE: LOOK6
"""
- # Create dir/foo, and set mode of dir to 000
+ # Create dir/foo, and set mode of dir to 0o000
c = env.c1
dir = c.homedir + [t.code]
res = c.create_obj(dir)
@@ -220,9 +220,9 @@ def testNonAccessable(t, env):
check(res)
res = c.compound(c.use_obj(dir + ['foo']))
if env.opts.uid == 0:
- check(res, [NFS4_OK, NFS4ERR_ACCESS], "LOOKUP object in a dir with mode=000")
+ check(res, [NFS4_OK, NFS4ERR_ACCESS], "LOOKUP object in a dir with mode=0o000")
else:
- check(res, NFS4ERR_ACCESS, "LOOKUP object in a dir with mode=000")
+ check(res, NFS4ERR_ACCESS, "LOOKUP object in a dir with mode=0o000")
def testInvalidUtf8(t, env):
"""LOOKUP with bad UTF-8 name strings should return NFS4ERR_INVAL
@@ -283,9 +283,9 @@ def testUnaccessibleDir(t, env):
check(res, msg="Setting mode=0 on directory %s" % t.code)
res = c.compound(c.use_obj(path + ['hidden']))
if env.opts.uid == 0:
- check(res, [NFS4_OK, NFS4ERR_ACCESS], "LOOKUP off of dir with mode=000")
+ check(res, [NFS4_OK, NFS4ERR_ACCESS], "LOOKUP off of dir with mode=0o000")
else:
- check(res, NFS4ERR_ACCESS, "LOOKUP off of dir with mode=000")
+ check(res, NFS4ERR_ACCESS, "LOOKUP off of dir with mode=0o000")
def testBadOpaque(t, env):
"""LOOKUP with a path component that has an incorrect array length
diff --git a/nfs4.0/servertests/st_open.py b/nfs4.0/servertests/st_open.py
index 437fb67..12db5df 100644
--- a/nfs4.0/servertests/st_open.py
+++ b/nfs4.0/servertests/st_open.py
@@ -25,7 +25,7 @@ def testCreateUncheckedFile(t, env):
c.init_connection()
# Create the file
- orig_attrs = { FATTR4_MODE: 0644, FATTR4_SIZE: 32 }
+ orig_attrs = { FATTR4_MODE: 0o644, FATTR4_SIZE: 32 }
res = c.create_file(t.code, attrs=orig_attrs, deny=OPEN4_SHARE_DENY_NONE)
check(res, msg="Trying to create file %s" % t.code)
fh, stateid = c.confirm(t.code, res)
@@ -33,7 +33,7 @@ def testCreateUncheckedFile(t, env):
checkdict(orig_attrs, rcvd_attrs, get_bitnumattr_dict(),
"Checking attrs on creation")
# Create the file again...it should ignore attrs
- attrs = { FATTR4_MODE: 0600, FATTR4_SIZE: 16 }
+ attrs = { FATTR4_MODE: 0o600, FATTR4_SIZE: 16 }
res = c.create_file(t.code, attrs=attrs, deny=OPEN4_SHARE_DENY_NONE)
check(res, msg="Trying to recreate file %s" % t.code)
fh, stateid = c.confirm(t.code, res)
@@ -41,12 +41,12 @@ def testCreateUncheckedFile(t, env):
checkdict(orig_attrs, rcvd_attrs, get_bitnumattr_dict(),
"Attrs on recreate should be ignored")
# Create the file again, should truncate size to 0 and ignore other attrs
- attrs = { FATTR4_MODE: 0600, FATTR4_SIZE: 0 }
+ attrs = { FATTR4_MODE: 0o600, FATTR4_SIZE: 0 }
res = c.create_file(t.code, attrs=attrs, deny=OPEN4_SHARE_DENY_NONE)
check(res, msg="Trying to truncate file %s" % t.code)
fh, stateid = c.confirm(t.code, res)
rcvd_attrs = c.do_getattrdict(fh, orig_attrs.keys())
- expect = { FATTR4_MODE: 0644, FATTR4_SIZE: 0 }
+ expect = { FATTR4_MODE: 0o644, FATTR4_SIZE: 0 }
checkdict(expect, rcvd_attrs, get_bitnumattr_dict(),
"Attrs on recreate should be ignored, except for size")
@@ -327,13 +327,13 @@ def testModeChange(t, env):
check(res)
ops = c.use_obj(fh) + [c.setattr({FATTR4_MODE:0})]
res = c.compound(ops)
- check(res, msg="Setting mode of file %s to 000" % t.code)
+ check(res, msg="Setting mode of file %s to 0o000" % t.code)
res = c.open_file(t.code, access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE)
if env.opts.uid == 0:
- check(res, [NFS4_OK, NFS4ERR_ACCESS], "Opening file %s with mode=000" % t.code)
+ check(res, [NFS4_OK, NFS4ERR_ACCESS], "Opening file %s with mode=0o000" % t.code)
else:
- check(res, NFS4ERR_ACCESS, "Opening file %s with mode=000" % t.code)
+ check(res, NFS4ERR_ACCESS, "Opening file %s with mode=0o000" % t.code)
def testShareConflict1(t, env):
"""OPEN conflicting with previous share
@@ -361,13 +361,13 @@ def testFailedOpen(t, env):
c1.init_connection()
# Client 1: create a file and deny others access
fh, stateid = c1.create_confirm(t.code)
- ops = c1.use_obj(fh) + [c1.setattr({FATTR4_MODE: 0700})]
+ ops = c1.use_obj(fh) + [c1.setattr({FATTR4_MODE: 0o700})]
check(c1.compound(ops))
# Client 2: try to open the file
c2 = env.c2
c2.init_connection()
res = c2.open_file(t.code)
- check(res, NFS4ERR_ACCESS, "Opening file with mode 0700 as 'other'")
+ check(res, NFS4ERR_ACCESS, "Opening file with mode 0o700 as 'other'")
# Client 1: try to use fh, stateid
res1 = c1.lock_file(t.code, fh, stateid)
check(res1, msg="Locking file after another client had a failed open")
diff --git a/nfs4.0/servertests/st_read.py b/nfs4.0/servertests/st_read.py
index 9b2203b..15f8795 100644
--- a/nfs4.0/servertests/st_read.py
+++ b/nfs4.0/servertests/st_read.py
@@ -74,7 +74,7 @@ def testLargeCount(t, env):
c = env.c1
c.init_connection()
fh, stateid = c.create_confirm(t.code, attrs={FATTR4_SIZE: 10000000,
- FATTR4_MODE: 0644})
+ FATTR4_MODE: 0o644})
res = c.read_file(fh, 0, 9000000, stateid)
check(res, msg="Reading file %s" % t.code)
_compare(t, res, '\x00'*9000000, False)
@@ -234,7 +234,7 @@ def testStolenStateid(t, env):
"""
c = env.c1
c.init_connection()
- res = c.create_file(t.code, attrs={FATTR4_MODE: 0600})
+ res = c.create_file(t.code, attrs={FATTR4_MODE: 0o600})
fh, stateid = c.confirm(t.code, res)
security=c.security
c.security=rpc.SecAuthSys(0, "whatever", 3912, 2422, [])
diff --git a/nfs4.0/servertests/st_readdir.py b/nfs4.0/servertests/st_readdir.py
index 5a70145..fb484b6 100644
--- a/nfs4.0/servertests/st_readdir.py
+++ b/nfs4.0/servertests/st_readdir.py
@@ -232,9 +232,9 @@ def testUnaccessibleDir(t, env):
ops = c.use_obj(path) + [c.readdir()]
res = c.compound(ops)
if env.opts.uid == 0:
- check(res, [NFS4_OK, NFS4ERR_ACCESS], "READDIR of directory with mode=000")
+ check(res, [NFS4_OK, NFS4ERR_ACCESS], "READDIR of directory with mode=0o000")
else:
- check(res, NFS4ERR_ACCESS, "READDIR of directory with mode=000")
+ check(res, NFS4ERR_ACCESS, "READDIR of directory with mode=0o000")
def testUnaccessibleDirAttrs(t, env):
"""READDIR with (cfh) in unaccessible directory requesting attrs
@@ -253,9 +253,9 @@ def testUnaccessibleDirAttrs(t, env):
[c.readdir(attr_request=[FATTR4_RDATTR_ERROR, FATTR4_TYPE])]
res = c.compound(ops)
if env.opts.uid == 0:
- check(res, [NFS4_OK, NFS4ERR_ACCESS], "READDIR of directory with mode=000")
+ check(res, [NFS4_OK, NFS4ERR_ACCESS], "READDIR of directory with mode=0o000")
else:
- check(res, NFS4ERR_ACCESS, "READDIR of directory with mode=000")
+ check(res, NFS4ERR_ACCESS, "READDIR of directory with mode=0o000")
###########################################
diff --git a/nfs4.0/servertests/st_reboot.py b/nfs4.0/servertests/st_reboot.py
index 33c3a4a..16cb008 100644
--- a/nfs4.0/servertests/st_reboot.py
+++ b/nfs4.0/servertests/st_reboot.py
@@ -116,7 +116,7 @@ def testEdge1(t, env):
c1 = env.c1
c1.init_connection()
# Client 1: lock file
- fh1, stateid1 = c1.create_confirm(t.code, attrs={FATTR4_MODE:0666},
+ fh1, stateid1 = c1.create_confirm(t.code, attrs={FATTR4_MODE:0o666},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE)
res1 = c1.lock_file(t.code, fh1, stateid1)
@@ -161,7 +161,7 @@ def testEdge2(t, env):
c1 = env.c1
c1.init_connection()
# Client 1: lock file
- fh1, stateid1 = c1.create_confirm(t.code, attrs={FATTR4_MODE:0666},
+ fh1, stateid1 = c1.create_confirm(t.code, attrs={FATTR4_MODE:0o666},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE)
res1 = c1.lock_file(t.code, fh1, stateid1)
diff --git a/nfs4.0/servertests/st_setattr.py b/nfs4.0/servertests/st_setattr.py
index 4a80f65..aa7123b 100644
--- a/nfs4.0/servertests/st_setattr.py
+++ b/nfs4.0/servertests/st_setattr.py
@@ -7,7 +7,7 @@ op = nfs_ops.NFS4ops()
def _set_mode(t, c, file, stateid=None, msg=" using stateid=0",
warnlist=[]):
- mode = 0740
+ mode = 0o740
dict = {FATTR4_MODE: mode}
ops = c.use_obj(file) + [c.setattr(dict, stateid)]
res = c.compound(ops)
@@ -399,7 +399,7 @@ def testInvalidAttr1(t, env):
path = c.homedir + [t.code]
res = c.create_obj(path)
check(res)
- badattr = dict2fattr({FATTR4_MODE: 0644})
+ badattr = dict2fattr({FATTR4_MODE: 0o644})
badattr.attr_vals = ''
res = c.compound(c.use_obj(path) + [op.setattr(env.stateid0, badattr)])
check(res, NFS4ERR_BADXDR, "SETATTR(FATTR4_MODE) with no data")
@@ -418,7 +418,7 @@ def testInvalidAttr2(t, env):
path = c.homedir + [t.code]
res = c.create_obj(path)
check(res)
- badattr = dict2fattr({FATTR4_MODE: 0644})
+ badattr = dict2fattr({FATTR4_MODE: 0o644})
badattr.attr_vals += 'Garbage data'
res = c.compound(c.use_obj(path) + [op.setattr(env.stateid0, badattr)])
check(res, NFS4ERR_BADXDR,
@@ -674,7 +674,7 @@ def testInodeLocking(t, env):
# In a single compound statement, setattr on dir and then
# do a state operation on a file in dir (like write or remove)
- ops = c.use_obj(basedir) + [c.setattr({FATTR4_MODE:0754})]
+ ops = c.use_obj(basedir) + [c.setattr({FATTR4_MODE:0o754})]
ops += [op.lookup('file'), op.write(stateid, 0, 0, 'blahblah')]
res = c.compound(ops)
check(res, msg="SETATTR on dir and state operation on file in dir")
@@ -690,7 +690,7 @@ def testChange(t, env):
c.init_connection()
fh, stateid = c.create_confirm(t.code)
change = c.do_getattr(FATTR4_CHANGE, fh)
- ops = c.use_obj(fh) + [c.setattr({FATTR4_MODE: 0740})]
+ ops = c.use_obj(fh) + [c.setattr({FATTR4_MODE: 0o740})]
res = c.compound(ops)
check(res)
change2 = c.do_getattr(FATTR4_CHANGE, fh)
@@ -708,10 +708,10 @@ def testChangeGranularity(t, env):
c.init_connection()
fh, stateid = c.create_confirm(t.code)
ops = c.use_obj(fh) + [c.getattr([FATTR4_CHANGE])] \
- + [c.setattr({FATTR4_MODE: 0740})] + [c.getattr([FATTR4_CHANGE])] \
- + [c.setattr({FATTR4_MODE: 0741})] + [c.getattr([FATTR4_CHANGE])] \
- + [c.setattr({FATTR4_MODE: 0742})] + [c.getattr([FATTR4_CHANGE])] \
- + [c.setattr({FATTR4_MODE: 0743})] + [c.getattr([FATTR4_CHANGE])]
+ + [c.setattr({FATTR4_MODE: 0o740})] + [c.getattr([FATTR4_CHANGE])] \
+ + [c.setattr({FATTR4_MODE: 0o741})] + [c.getattr([FATTR4_CHANGE])] \
+ + [c.setattr({FATTR4_MODE: 0o742})] + [c.getattr([FATTR4_CHANGE])] \
+ + [c.setattr({FATTR4_MODE: 0o743})] + [c.getattr([FATTR4_CHANGE])]
res = c.compound(ops)
check(res)
chattr1 = res.resarray[1].obj_attributes
diff --git a/nfs4.0/servertests/st_write.py b/nfs4.0/servertests/st_write.py
index 2f73cbb..4777e1b 100644
--- a/nfs4.0/servertests/st_write.py
+++ b/nfs4.0/servertests/st_write.py
@@ -38,7 +38,7 @@ def testSimpleWrite(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs,
deny=OPEN4_SHARE_DENY_NONE)
res = c.write_file(fh, _text, how=UNSTABLE4)
@@ -55,7 +55,7 @@ def testSimpleWrite2(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs,
deny=OPEN4_SHARE_DENY_NONE)
res = c.write_file(fh, _text, 30)
@@ -72,7 +72,7 @@ def testStateidOne(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs,
deny=OPEN4_SHARE_DENY_NONE)
res = c.write_file(fh, _text, 5, env.stateid1, DATA_SYNC4)
@@ -91,7 +91,7 @@ def testWithOpen(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs)
res = c.write_file(fh, _text, 50, stateid, FILE_SYNC4)
check(res, msg="WRITE with openstateid and FILE_SYNC4")
@@ -109,7 +109,7 @@ def testNoData(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs)
time_prior = c.do_getattr(FATTR4_TIME_MODIFY, fh)
env.sleep(1)
@@ -281,7 +281,7 @@ def testOpenMode(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs,
access=OPEN4_SHARE_ACCESS_READ)
res = c.write_file(fh, _text, 0, stateid)
@@ -298,7 +298,7 @@ def testShareDeny(t, env):
"""
c = env.c1
c.init_connection()
- attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0644}
+ attrs = {FATTR4_SIZE: 32, FATTR4_MODE: 0o644}
fh, stateid = c.create_confirm(t.code, attrs=attrs,
deny=OPEN4_SHARE_DENY_WRITE)
res = c.write_file(fh, _text)
@@ -520,7 +520,7 @@ def testStolenStateid(t, env):
"""
c = env.c1
c.init_connection()
- res = c.create_file(t.code, attrs={FATTR4_MODE: 0600})
+ res = c.create_file(t.code, attrs={FATTR4_MODE: 0o600})
fh, stateid = c.confirm(t.code, res)
security=c.security
c.security=rpc.SecAuthSys(0, "whatever", 3912, 2422, [])
diff --git a/nfs4.1/client41tests/environment.py b/nfs4.1/client41tests/environment.py
index 7c7bb0c..933264c 100644
--- a/nfs4.1/client41tests/environment.py
+++ b/nfs4.1/client41tests/environment.py
@@ -362,7 +362,7 @@ def clean_dir(sess, path):
for e in entries:
# We separate setattr and remove to avoid an inode locking bug
ops = use_obj(path + [e.name])
- ops += [op.setattr(stateid, {FATTR4_MODE:0755})]
+ ops += [op.setattr(stateid, {FATTR4_MODE:0o755})]
res = sess.compound(ops)
check(res, msg="Setting mode on %s" % repr(e.name))
ops = use_obj(path)
@@ -405,7 +405,7 @@ def use_obj(file):
else:
return [op.putrootfh()] + [op.lookup(comp) for comp in file]
-def create_obj(sess, path, kind=NF4DIR, attrs={FATTR4_MODE:0755}):
+def create_obj(sess, path, kind=NF4DIR, attrs={FATTR4_MODE:0o755}):
"""Return ops needed to create given non-file object"""
# Ensure using createtype4
if not hasattr(kind, "type"):
@@ -413,7 +413,7 @@ def create_obj(sess, path, kind=NF4DIR, attrs={FATTR4_MODE:0755}):
ops = use_obj(path[:-1]) + [op.create(kind, path[-1], attrs)]
return sess.compound(ops)
-def create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4, verifier=None, want_deleg=False):
@@ -434,7 +434,7 @@ def create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
open_claim4(CLAIM_NULL, name))
return sess.compound(use_obj(dir) + [open_op, op.getfh()])
-def create_confirm(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def create_confirm(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4):
diff --git a/nfs4.1/dataserver.py b/nfs4.1/dataserver.py
index 80179f8..af0e35a 100644
--- a/nfs4.1/dataserver.py
+++ b/nfs4.1/dataserver.py
@@ -130,7 +130,7 @@ class DataServer41(DataServer):
self.sess.compound([op4.reclaim_complete(const4.FALSE)])
def make_root(self):
- attrs = {const4.FATTR4_MODE:0777}
+ attrs = {const4.FATTR4_MODE:0o777}
existing_path = []
kind = type4.createtype4(const4.NF4DIR)
for comp in self.path:
@@ -153,7 +153,7 @@ class DataServer41(DataServer):
seqid=0
access = const4.OPEN4_SHARE_ACCESS_BOTH
deny = const4.OPEN4_SHARE_DENY_NONE
- attrs = {const4.FATTR4_MODE: 0777}
+ attrs = {const4.FATTR4_MODE: 0o777}
owner = "mds"
mode = const4.GUARDED4
verifier = self.sess.c.verifier
@@ -257,7 +257,7 @@ class DataServer3(DataServer):
def open_file(self, mds_fh):
name = self.fh_to_name(mds_fh)
where = type3.diropargs3(self.rootfh, name)
- attr = type3.sattr3(mode=type3.set_mode3(True, 0777),
+ attr = type3.sattr3(mode=type3.set_mode3(True, 0o777),
uid=type3.set_uid3(True, 0),
gid=type3.set_gid3(True, 0),
size=type3.set_size3(False),
diff --git a/nfs4.1/fs.py b/nfs4.1/fs.py
index b0b06d5..e2c7eca 100644
--- a/nfs4.1/fs.py
+++ b/nfs4.1/fs.py
@@ -25,7 +25,7 @@ class MetaData(object):
self.refcnt = 0
self.createverf = ""
self.owner = ""
- self.mode = 0777
+ self.mode = 0o777
self.time_access = self.time_modify = self.time_create = nfs4lib.get_nfstime()
if 1:
self.parent = 0
diff --git a/nfs4.1/nfs4client.py b/nfs4.1/nfs4client.py
index 135981d..5288942 100644
--- a/nfs4.1/nfs4client.py
+++ b/nfs4.1/nfs4client.py
@@ -560,7 +560,7 @@ class SessionRecord(object):
return res
## def open(self, owner, name=None, type=OPEN4_NOCREATE,
-## mode=UNCHECKED4, attrs={FATTR4_MODE:0644}, verf=None,
+## mode=UNCHECKED4, attrs={FATTR4_MODE:0o644}, verf=None,
## access=OPEN4_SHARE_ACCESS_READ,
## deny=OPEN4_SHARE_DENY_WRITE,
## claim_type=CLAIM_NULL, deleg_type=None, deleg_cur_info=None):
diff --git a/nfs4.1/server41tests/environment.py b/nfs4.1/server41tests/environment.py
index 823dfe3..3020371 100644
--- a/nfs4.1/server41tests/environment.py
+++ b/nfs4.1/server41tests/environment.py
@@ -418,7 +418,7 @@ def clean_dir(sess, path):
for e in entries:
# We separate setattr and remove to avoid an inode locking bug
ops = use_obj(path + [e.name])
- ops += [op.setattr(stateid, {FATTR4_MODE:0755})]
+ ops += [op.setattr(stateid, {FATTR4_MODE:0o755})]
res = sess.compound(ops)
check(res, msg="Setting mode on %s" % repr(e.name))
ops = use_obj(path)
@@ -460,7 +460,7 @@ def do_getattrdict(sess, file, attrlist):
check(res)
return res.resarray[-1].obj_attributes
-def create_obj(sess, path, kind=NF4DIR, attrs={FATTR4_MODE:0755}):
+def create_obj(sess, path, kind=NF4DIR, attrs={FATTR4_MODE:0o755}):
"""Return ops needed to create given non-file object"""
# Ensure using createtype4
if not hasattr(kind, "type"):
@@ -468,7 +468,7 @@ def create_obj(sess, path, kind=NF4DIR, attrs={FATTR4_MODE:0755}):
ops = use_obj(path[:-1]) + [op.create(kind, path[-1], attrs)]
return sess.compound(ops)
-def open_create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def open_create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4, verifier=None,
@@ -483,7 +483,7 @@ def open_create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
return sess.compound(open_op)
-def open_create_file_op(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def open_create_file_op(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4, verifier=None,
@@ -526,7 +526,7 @@ def open_create_file_op(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
return fh_op + [open_op, op.getfh()]
-def create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def create_file(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4, verifier=None, want_deleg=False,
@@ -559,7 +559,7 @@ def open_file(sess, owner, path=None,
verifier, claim_type, want_deleg, deleg_type,
open_create, seqid, clientid)
-def create_confirm(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def create_confirm(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4):
@@ -572,7 +572,7 @@ def create_confirm(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
fh = res.resarray[-1].object
return fh, res.resarray[-2].stateid
-def create_close(sess, owner, path=None, attrs={FATTR4_MODE: 0644},
+def create_close(sess, owner, path=None, attrs={FATTR4_MODE: 0o644},
access=OPEN4_SHARE_ACCESS_BOTH,
deny=OPEN4_SHARE_DENY_NONE,
mode=GUARDED4):
diff --git a/nfs4.1/server41tests/st_lookup.py b/nfs4.1/server41tests/st_lookup.py
index 9f50004..3899425 100644
--- a/nfs4.1/server41tests/st_lookup.py
+++ b/nfs4.1/server41tests/st_lookup.py
@@ -270,7 +270,7 @@ if 0:
DEPEND: MKDIR
CODE: LOOK6
"""
- # Create dir/foo, and set mode of dir to 000
+ # Create dir/foo, and set mode of dir to 0o000
c = env.c1
dir = c.homedir + [t.code]
res = c.create_obj(dir)
@@ -283,7 +283,7 @@ if 0:
res = c.compound(c.use_obj(dir))
check(res)
res = c.compound(c.use_obj(dir + ['foo']))
- check(res, NFS4ERR_ACCESS, "LOOKUP object in a dir with mode=000")
+ check(res, NFS4ERR_ACCESS, "LOOKUP object in a dir with mode=0o000")
def testInvalidUtf8(t, env):
"""LOOKUP with bad UTF-8 name strings should return NFS4ERR_INVAL
--
2.17.1
next prev parent reply other threads:[~2018-07-24 8:39 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-24 7:33 [PATCH 01/24] pynfs: python3 support plan: print -> print() jiyin
2018-07-24 7:33 ` [PATCH 02/24] pynfs: python3 support plan: exec -> exec() jiyin
2018-07-24 7:33 ` [PATCH 03/24] pynfs: python3 support plan: "except E,e:" -> "except E as e:" jiyin
2018-07-24 7:33 ` [PATCH 04/24] pynfs: python3 support plan: "raise E, args:" -> "raise E(args)" jiyin
2018-07-24 7:33 ` [PATCH 05/24] pynfs: python3 support plan: remove suffix 'L' of long integer jiyin
2018-07-24 7:33 ` jiyin [this message]
2018-07-24 7:33 ` [PATCH 07/24] pynfs: python3 support plan: sys.maxint -> sys.maxsize jiyin
2018-07-24 7:33 ` [PATCH 08/24] pynfs: python3 support plan: cStringIO -> StringIO jiyin
2018-07-24 7:33 ` [PATCH 09/24] pynfs: python3 support plan: dict.has_key -> key in dict jiyin
2018-07-24 7:33 ` [PATCH 10/24] pynfs: python3 support plan: not equal op s/ <> / != / jiyin
2018-07-24 7:33 ` [PATCH 11/24] pynfs: python3 support plan: xdrgen: remove 'L' suffix of long integer jiyin
2018-07-24 7:33 ` [PATCH 12/24] pynfs: python3 support plan: file() -> open() jiyin
2018-07-24 7:33 ` [PATCH 13/24] pynfs: python3 support plan: list.sort() -> newlist = sorted(list) jiyin
2018-07-24 7:33 ` [PATCH 14/24] pynfs: python3 support plan: Relative Import -> Absolute Import jiyin
2018-07-24 7:33 ` [PATCH 15/24] pynfs: python3 support plan: fix 'socket' has no attribute '_socketobject' jiyin
2018-07-24 7:33 ` [PATCH 16/24] pynfs: python3 support plan: remove cPickle jiyin
2018-07-24 7:33 ` [PATCH 17/24] pynfs: python3 support plan: fix indent error on python3 jiyin
2018-07-24 7:33 ` [PATCH 18/24] pynfs: python3 support plan: fix 'TypeError: must be str, not bytes' jiyin
2018-07-24 7:33 ` [PATCH 19/24] pynfs: python3 support plan: fix import fail on python3 jiyin
2018-07-24 7:33 ` [PATCH 20/24] pynfs: python3 support plan: fix 'dict' has no attribute 'iteritems' jiyin
2018-07-24 7:33 ` [PATCH 21/24] pynfs: python3 support plan: fix sort() fail and require python version jiyin
2018-07-24 7:33 ` [PATCH 22/24] pynfs: python3 support plan: fix ord() failure on python3 jiyin
2018-07-24 7:33 ` [PATCH 23/24] pynfs: python3 support plan: fix except multi exceptions in one line jiyin
2018-07-24 7:33 ` [PATCH 24/24] pynfs: python3 support plan: fix access class var in list comprehension jiyin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180724073342.5738-6-jiyin@redhat.com \
--to=jiyin@redhat.com \
--cc=bfields@redhat.com \
--cc=linux-nfs@vger.kernel.org \
--cc=yin-jianhong@163.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.