Python stat.S_IWUSR Examples
The following are 30
code examples of stat.S_IWUSR().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
stat
, or try the search function
.
Example #1
Source File: ssm.py From aegea with Apache License 2.0 | 10 votes |
def ensure_session_manager_plugin(): session_manager_dir = os.path.join(config.user_config_dir, "bin") PATH = os.environ.get("PATH", "") + ":" + session_manager_dir if shutil.which("session-manager-plugin", path=PATH): subprocess.check_call(["session-manager-plugin"], env=dict(os.environ, PATH=PATH)) else: os.makedirs(session_manager_dir, exist_ok=True) target_path = os.path.join(session_manager_dir, "session-manager-plugin") if platform.system() == "Darwin": download_session_manager_plugin_macos(target_path=target_path) elif platform.linux_distribution()[0] == "Ubuntu": download_session_manager_plugin_linux(target_path=target_path) else: download_session_manager_plugin_linux(target_path=target_path, pkg_format="rpm") os.chmod(target_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR) subprocess.check_call(["session-manager-plugin"], env=dict(os.environ, PATH=PATH)) return shutil.which("session-manager-plugin", path=PATH)
Example #2
Source File: makebin.py From pydarkstar with MIT License | 7 votes |
def chmod(path): os.chmod(path, # user stat.S_IRUSR | # read stat.S_IWUSR | # write stat.S_IXUSR | # execute # group stat.S_IRGRP | # read stat.S_IWGRP | # write stat.S_IXGRP | # execute # other stat.S_IROTH | # read # stat.S_IWOTH | # write stat.S_IXOTH # execute )
Example #3
Source File: launcher.py From Computable with MIT License | 6 votes |
def write_batch_script(self, n): """Instantiate and write the batch script to the work_dir.""" self.n = n # first priority is batch_template if set if self.batch_template_file and not self.batch_template: # second priority is batch_template_file with open(self.batch_template_file) as f: self.batch_template = f.read() if not self.batch_template: # third (last) priority is default_template self.batch_template = self.default_template # add jobarray or queue lines to user-specified template # note that this is *only* when user did not specify a template. self._insert_queue_in_script() self._insert_job_array_in_script() script_as_string = self.formatter.format(self.batch_template, **self.context) self.log.debug('Writing batch script: %s', self.batch_file) with open(self.batch_file, 'w') as f: f.write(script_as_string) os.chmod(self.batch_file, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR)
Example #4
Source File: utilities.py From passhport with GNU Affero General Public License v3.0 | 6 votes |
def write_authorized_keys(name, sshkey): """Add the SSH key in authorize_keys with passhport call""" try: with open(config.SSH_KEY_FILE, "a", encoding="utf8") as \ authorized_keys_file: authorized_keys_file.write('command="' + \ config.PYTHON_PATH + \ " " + config.PASSHPORT_PATH + \ " " + name + '" ' + sshkey + "\n") except IOError: return response('ERROR: cannot write in the file ' + \ '"authorized_keys". However, the user is ' + \ 'stored in the database.', 500) # set correct read/write permissions os.chmod(config.SSH_KEY_FILE, stat.S_IRUSR | stat.S_IWUSR) return True
Example #5
Source File: device_utils_test.py From Jandroid with BSD 3-Clause "New" or "Revised" License | 6 votes |
def testStatDirectory_filePermissions(self): should_have = ( ('some_file', stat.S_IWUSR), # Owner can write. ('tmp', stat.S_IXOTH), # Others can execute. ('tmp', stat.S_ISVTX), # Has sticky bit. ('my_cmd', stat.S_ISGID), # Has set-group-ID bit. ('silly', stat.S_ISUID), # Has set UID bit. ) should_not_have = ( ('some_file', stat.S_IWOTH), # Others can't write. ('block_dev', stat.S_IRGRP), # Group can't read. ('silly', stat.S_IXUSR), # Owner can't execute. ) entries = self.getStatEntries() for filename, bit in should_have: self.assertTrue(entries[filename]['st_mode'] & bit) for filename, bit in should_not_have: self.assertFalse(entries[filename]['st_mode'] & bit)
Example #6
Source File: loadbalancer.py From octavia with Apache License 2.0 | 6 votes |
def upload_certificate(self, lb_id, filename): self._check_ssl_filename_format(filename) # create directory if not already there if not os.path.exists(self._cert_dir(lb_id)): os.makedirs(self._cert_dir(lb_id)) stream = Wrapped(flask.request.stream) file = self._cert_file_path(lb_id, filename) flags = os.O_WRONLY | os.O_CREAT # mode 00600 mode = stat.S_IRUSR | stat.S_IWUSR with os.fdopen(os.open(file, flags, mode), 'wb') as crt_file: b = stream.read(BUFFER) while b: crt_file.write(b) b = stream.read(BUFFER) resp = webob.Response(json=dict(message='OK')) resp.headers['ETag'] = stream.get_md5() return resp
Example #7
Source File: util.py From octavia with Apache License 2.0 | 6 votes |
def install_netns_systemd_service(): os_utils = osutils.BaseOS.get_os_util() flags = os.O_WRONLY | os.O_CREAT | os.O_TRUNC # mode 00644 mode = (stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IROTH) # TODO(bcafarel): implement this for other init systems # netns handling depends on a separate unit file netns_path = os.path.join(consts.SYSTEMD_DIR, consts.AMP_NETNS_SVC_PREFIX + '.service') jinja_env = jinja2.Environment( autoescape=True, loader=jinja2.FileSystemLoader(os.path.dirname( os.path.realpath(__file__) ) + consts.AGENT_API_TEMPLATES)) if not os.path.exists(netns_path): with os.fdopen(os.open(netns_path, flags, mode), 'w') as text_file: text = jinja_env.get_template( consts.AMP_NETNS_SVC_PREFIX + '.systemd.j2').render( amphora_nsname=consts.AMPHORA_NAMESPACE, HasIFUPAll=os_utils.has_ifup_all()) text_file.write(text)
Example #8
Source File: server.py From octavia with Apache License 2.0 | 6 votes |
def upload_config(self): try: stream = flask.request.stream file_path = cfg.find_config_files(project=CONF.project, prog=CONF.prog)[0] flags = os.O_WRONLY | os.O_CREAT | os.O_TRUNC # mode 00600 mode = stat.S_IRUSR | stat.S_IWUSR with os.fdopen(os.open(file_path, flags, mode), 'wb') as cfg_file: b = stream.read(BUFFER) while b: cfg_file.write(b) b = stream.read(BUFFER) CONF.mutate_config_files() except Exception as e: LOG.error("Unable to update amphora-agent configuration: " "{}".format(str(e))) return webob.Response(json=dict( message="Unable to update amphora-agent configuration.", details=str(e)), status=500) return webob.Response(json={'message': 'OK'}, status=202)
Example #9
Source File: virtio_console_guest.py From avocado-vt with GNU General Public License v2.0 | 6 votes |
def start(self): """ Start the daemon :return: PID of daemon. """ # Check for a pidfile to see if the daemon already runs openers = self.is_file_open(self.stdout) rundaemon = False if len(openers) > 0: for i in openers: if i[1] & stat.S_IWUSR: rundaemon = True openers.remove(i) if len(openers) > 0: for i in openers: os.kill(int(i[0]), 9) time.sleep(0.3) # Start the daemon if not rundaemon: if self.daemonize(): self.run()
Example #10
Source File: device_utils_test.py From Jandroid with BSD 3-Clause "New" or "Revised" License | 6 votes |
def testStatDirectory_filePermissions(self): should_have = ( ('some_file', stat.S_IWUSR), # Owner can write. ('tmp', stat.S_IXOTH), # Others can execute. ('tmp', stat.S_ISVTX), # Has sticky bit. ('my_cmd', stat.S_ISGID), # Has set-group-ID bit. ('silly', stat.S_ISUID), # Has set UID bit. ) should_not_have = ( ('some_file', stat.S_IWOTH), # Others can't write. ('block_dev', stat.S_IRGRP), # Group can't read. ('silly', stat.S_IXUSR), # Owner can't execute. ) entries = self.getStatEntries() for filename, bit in should_have: self.assertTrue(entries[filename]['st_mode'] & bit) for filename, bit in should_not_have: self.assertFalse(entries[filename]['st_mode'] & bit)
Example #11
Source File: lib.py From marsnake with GNU General Public License v3.0 | 6 votes |
def special_to_letter(mode): l = '' ALL_R = (stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH) ALL_W = (stat.S_IWUSR | stat.S_IWGRP | stat.S_IWOTH) if mode & stat.S_ISGID: l += 'G' if mode & stat.S_ISUID: l += 'U' if mode & stat.S_ISVTX: l += 'T' if mode & (stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH): l += 'E' if ( mode & ALL_R ) == ALL_R: l += 'R' if ( mode & ALL_W ) == ALL_W: l += 'W' return l
Example #12
Source File: sql.py From wrds with MIT License | 6 votes |
def __create_pgpass_file_unix(self): """ Create a .pgpass file on Unix-like operating systems. Permissions on this file must also be set on Unix-like systems. This function works on Mac OS X and Linux. It should work on Solaris too, but this is untested. """ homedir = os.getenv('HOME') pgfile = homedir + os.path.sep + '.pgpass' if (os.path.isfile(pgfile)): # Set it to mode 600 (rw-------) so we can write to it os.chmod(pgfile, stat.S_IRUSR | stat.S_IWUSR) self.__write_pgpass_file(pgfile) # Set it to mode 400 (r------) to protect it os.chmod(pgfile, stat.S_IRUSR)
Example #13
Source File: test_posix.py From Fluid-Designer with GNU General Public License v3.0 | 6 votes |
def test_mknod(self): # Test using mknod() to create a FIFO (the only use specified # by POSIX). support.unlink(support.TESTFN) mode = stat.S_IFIFO | stat.S_IRUSR | stat.S_IWUSR try: posix.mknod(support.TESTFN, mode, 0) except OSError as e: # Some old systems don't allow unprivileged users to use # mknod(), or only support creating device nodes. self.assertIn(e.errno, (errno.EPERM, errno.EINVAL)) else: self.assertTrue(stat.S_ISFIFO(posix.stat(support.TESTFN).st_mode)) # Keyword arguments are also supported support.unlink(support.TESTFN) try: posix.mknod(path=support.TESTFN, mode=mode, device=0, dir_fd=None) except OSError as e: self.assertIn(e.errno, (errno.EPERM, errno.EINVAL))
Example #14
Source File: test_posix.py From Fluid-Designer with GNU General Public License v3.0 | 6 votes |
def test_mknod_dir_fd(self): # Test using mknodat() to create a FIFO (the only use specified # by POSIX). support.unlink(support.TESTFN) mode = stat.S_IFIFO | stat.S_IRUSR | stat.S_IWUSR f = posix.open(posix.getcwd(), posix.O_RDONLY) try: posix.mknod(support.TESTFN, mode, 0, dir_fd=f) except OSError as e: # Some old systems don't allow unprivileged users to use # mknod(), or only support creating device nodes. self.assertIn(e.errno, (errno.EPERM, errno.EINVAL)) else: self.assertTrue(stat.S_ISFIFO(posix.stat(support.TESTFN).st_mode)) finally: posix.close(f)
Example #15
Source File: test_finder.py From Fluid-Designer with GNU General Public License v3.0 | 6 votes |
def test_no_read_directory(self): # Issue #16730 tempdir = tempfile.TemporaryDirectory() original_mode = os.stat(tempdir.name).st_mode def cleanup(tempdir): """Cleanup function for the temporary directory. Since we muck with the permissions, we want to set them back to their original values to make sure the directory can be properly cleaned up. """ os.chmod(tempdir.name, original_mode) # If this is not explicitly called then the __del__ method is used, # but since already mucking around might as well explicitly clean # up. tempdir.__exit__(None, None, None) self.addCleanup(cleanup, tempdir) os.chmod(tempdir.name, stat.S_IWUSR | stat.S_IXUSR) finder = self.get_finder(tempdir.name) found = self._find(finder, 'doesnotexist') self.assertEqual(found, self.NOT_FOUND)
Example #16
Source File: panel.py From coursys with GNU General Public License v3.0 | 6 votes |
def _check_cert(filename): """ Does this certificate file look okay? Returns error message, or None if okay """ try: st = os.stat(filename) except OSError: return filename + " doesn't exist" else: good_perm = stat.S_IFREG | stat.S_IRUSR # | stat.S_IWUSR if (st[stat.ST_UID], st[stat.ST_GID]) != (0,0): return 'not owned by root.root' perm = st[stat.ST_MODE] if good_perm != perm: return "expected permissions %o but found %o." % (good_perm, perm)
Example #17
Source File: test_file_loader.py From Fluid-Designer with GNU General Public License v3.0 | 6 votes |
def test_read_only_bytecode(self): # When bytecode is read-only but should be rewritten, fail silently. with util.create_modules('_temp') as mapping: # Create bytecode that will need to be re-created. py_compile.compile(mapping['_temp']) bytecode_path = self.util.cache_from_source(mapping['_temp']) with open(bytecode_path, 'r+b') as bytecode_file: bytecode_file.seek(0) bytecode_file.write(b'\x00\x00\x00\x00') # Make the bytecode read-only. os.chmod(bytecode_path, stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH) try: # Should not raise OSError! self.import_(mapping['_temp'], '_temp') finally: # Make writable for eventual clean-up. os.chmod(bytecode_path, stat.S_IWUSR)
Example #18
Source File: tools.py From delocate with BSD 2-Clause "Simplified" License | 6 votes |
def ensure_permissions(mode_flags=stat.S_IWUSR): """decorator to ensure a filename has given permissions. If changed, original permissions are restored after the decorated modification. """ def decorator(f): def modify(filename, *args, **kwargs): m = chmod_perms(filename) if exists(filename) else mode_flags if not m & mode_flags: os.chmod(filename, m | mode_flags) try: return f(filename, *args, **kwargs) finally: # restore original permissions if not m & mode_flags: os.chmod(filename, m) return modify return decorator # Open filename, checking for read permission
Example #19
Source File: 1_2_188_to_1_2_189.py From indy-node with Apache License 2.0 | 6 votes |
def set_own_perm(usr, dir_list): uid = pwd.getpwnam(usr).pw_uid gid = grp.getgrnam(usr).gr_gid perm_mask_rw = stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IWGRP perm_mask_rwx = stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR | stat.S_IRGRP | stat.S_IWGRP | stat.S_IXGRP for cdir in dir_list: os.chown(cdir, uid, gid) os.chmod(cdir, perm_mask_rwx) for croot, sub_dirs, cfiles in os.walk(cdir): for fs_name in sub_dirs: os.chown(os.path.join(croot, fs_name), uid, gid) os.chmod(os.path.join(croot, fs_name), perm_mask_rwx) for fs_name in cfiles: os.chown(os.path.join(croot, fs_name), uid, gid) os.chmod(os.path.join(croot, fs_name), perm_mask_rw)
Example #20
Source File: dax_settings.py From dax with MIT License | 5 votes |
def __init__(self): self.netrc_file = os.path.join(os.path.expanduser('~'), '.netrc') if not os.path.exists(self.netrc_file): open(self.netrc_file, 'a').close() # Setting mode for the file: os.chmod(self.netrc_file, stat.S_IWUSR | stat.S_IRUSR) self.is_secured() self.netrc_obj = netrc.netrc(self.netrc_file)
Example #21
Source File: daemon.py From shadowsocksr with Apache License 2.0 | 5 votes |
def write_pid_file(pid_file, pid): import fcntl import stat try: fd = os.open(pid_file, os.O_RDWR | os.O_CREAT, stat.S_IRUSR | stat.S_IWUSR) except OSError as e: shell.print_exception(e) return -1 flags = fcntl.fcntl(fd, fcntl.F_GETFD) assert flags != -1 flags |= fcntl.FD_CLOEXEC r = fcntl.fcntl(fd, fcntl.F_SETFD, flags) assert r != -1 # There is no platform independent way to implement fcntl(fd, F_SETLK, &fl) # via fcntl.fcntl. So use lockf instead try: fcntl.lockf(fd, fcntl.LOCK_EX | fcntl.LOCK_NB, 0, 0, os.SEEK_SET) except IOError: r = os.read(fd, 32) if r: logging.error('already started at pid %s' % common.to_str(r)) else: logging.error('already started') os.close(fd) return -1 os.ftruncate(fd, 0) os.write(fd, common.to_bytes(str(pid))) return 0
Example #22
Source File: iso.py From MCVirt with GNU General Public License v2.0 | 5 votes |
def set_iso_permissions(self): """Set permissions to 644""" mode = stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IROTH os.chmod(self.get_path(), mode)
Example #23
Source File: _script.py From flocker with Apache License 2.0 | 5 votes |
def _create_listening_directory(self, directory_path): """ Create the parent directory for the Unix socket if it doesn't exist. :param FilePath directory_path: The directory to create. """ original_umask = umask(0) try: if not directory_path.exists(): directory_path.makedirs() directory_path.chmod(S_IRUSR | S_IWUSR | S_IXUSR) finally: umask(original_umask)
Example #24
Source File: test_tempfile.py From Fluid-Designer with GNU General Public License v3.0 | 5 votes |
def test_read_only_directory(self): with _inside_empty_temp_dir(): oldmode = mode = os.stat(tempfile.tempdir).st_mode mode &= ~(stat.S_IWUSR | stat.S_IWGRP | stat.S_IWOTH) os.chmod(tempfile.tempdir, mode) try: if os.access(tempfile.tempdir, os.W_OK): self.skipTest("can't set the directory read-only") with self.assertRaises(PermissionError): self.make_temp() self.assertEqual(os.listdir(tempfile.tempdir), []) finally: os.chmod(tempfile.tempdir, oldmode)
Example #25
Source File: utils.py From pipenv with MIT License | 5 votes |
def set_write_bit(fn): if isinstance(fn, six.string_types) and not os.path.exists(fn): return os.chmod(fn, stat.S_IWRITE | stat.S_IWUSR | stat.S_IRUSR) return
Example #26
Source File: dax_tools_utils.py From dax with MIT License | 5 votes |
def write(self): """Write config options to the ~/.dax_settings.ini file. :return: None """ with open(self.settings_file, 'w+') as ini_f: ini_f.write(INI_HEADER) self.config_parser.write(ini_f) os.chmod(self.settings_file, stat.S_IWUSR | stat.S_IRUSR)
Example #27
Source File: dependency_manager_util_unittest.py From Jandroid with BSD 3-Clause "New" or "Revised" License | 5 votes |
def setUp(self): self.tmp_dir = os.path.abspath(tempfile.mkdtemp(prefix='telemetry')) self.sub_dir = os.path.join(self.tmp_dir, 'sub_dir') os.mkdir(self.sub_dir) self.read_only_path = (os.path.join(self.tmp_dir, 'read_only')) with open(self.read_only_path, 'w+') as read_file: read_file.write('Read-only file') os.chmod(self.read_only_path, stat.S_IRUSR) self.writable_path = (os.path.join(self.tmp_dir, 'writable')) with open(self.writable_path, 'w+') as writable_file: writable_file.write('Writable file') os.chmod(self.writable_path, stat.S_IRUSR | stat.S_IWUSR) self.executable_path = (os.path.join(self.tmp_dir, 'executable')) with open(self.executable_path, 'w+') as executable_file: executable_file.write('Executable file') os.chmod(self.executable_path, stat.S_IRWXU) self.sub_read_only_path = (os.path.join(self.sub_dir, 'read_only')) with open(self.sub_read_only_path, 'w+') as read_file: read_file.write('Read-only sub file') os.chmod(self.sub_read_only_path, stat.S_IRUSR) self.sub_writable_path = (os.path.join(self.sub_dir, 'writable')) with open(self.sub_writable_path, 'w+') as writable_file: writable_file.write('Writable sub file') os.chmod(self.sub_writable_path, stat.S_IRUSR | stat.S_IWUSR) self.sub_executable_path = (os.path.join(self.sub_dir, 'executable')) with open(self.sub_executable_path, 'w+') as executable_file: executable_file.write('Executable sub file') os.chmod(self.sub_executable_path, stat.S_IRWXU) self.AssertExpectedDirFiles(self.tmp_dir) self.archive_path = self.CreateZipArchiveFromDir(self.tmp_dir)
Example #28
Source File: fileoperations.py From deepWordBug with Apache License 2.0 | 5 votes |
def _set_user_only_permissions_file(location, ex=False): """ :param ex: Boolean: add executable permission """ permission = stat.S_IRUSR | stat.S_IWUSR if ex: permission |= stat.S_IXUSR os.chmod(location, permission)
Example #29
Source File: download_binaries.py From Montreal-Forced-Aligner with MIT License | 5 votes |
def download(args): base_dir = os.path.dirname(os.path.abspath(__file__)) temp_dir = args.temp_directory if not args.temp_directory: temp_dir = base_dir os.makedirs(base_dir, exist_ok=True) if sys.platform == 'darwin': plat = 'macosx' elif sys.platform == 'win32': plat = 'win64' else: plat = 'linux' print('Downloading precompiled binaries for {}...'.format(plat)) download_link = 'http://mlmlab.org/mfa/precompiled_binaries/mfa_thirdparty_{}.zip'.format( plat) path = os.path.join(temp_dir, '{}.zip'.format(plat)) if args.redownload or not os.path.exists(path): with tqdm(unit='B', unit_scale=True, miniters=1) as t: filename, headers = urlretrieve(download_link, path, reporthook=tqdm_hook(t), data=None) shutil.unpack_archive(path, base_dir) if not args.keep: os.remove(path) if plat != 'win': import stat bin_dir = os.path.join(base_dir, 'bin') for f in os.listdir(bin_dir): if '.' in f: continue os.chmod(os.path.join(bin_dir, f), stat.S_IEXEC | stat.S_IWUSR | stat.S_IRUSR) return True
Example #30
Source File: test_process.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def tearDown(self): """ Restore the saved PATH setting, and set all created files readable again so that they can be deleted easily. """ os.chmod(os.path.join(self.bazbar, "executable"), stat.S_IWUSR) if self.oldPath is None: try: del os.environ['PATH'] except KeyError: pass else: os.environ['PATH'] = self.oldPath