Python os.O_DIRECTORY Examples
The following are 9
code examples of os.O_DIRECTORY().
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
os
, or try the search function
.
Example #1
Source File: boot_config.py From kano-settings with GNU General Public License v2.0 | 6 votes |
def close(self): if self.state == 2: if dry_run: logger.info("dry run config transaction can be found in {}".format(self.temp_path)) else: logger.info("closing config transaction") shutil.move(self.temp_path, self.path) # sync dirfd = os.open(self.dir, os.O_DIRECTORY) os.fsync(dirfd) os.close(dirfd) os.system('sync') else: logger.warn("closing config transaction with no edits") self.set_state_idle()
Example #2
Source File: utils.py From barman with GNU General Public License v3.0 | 6 votes |
def fsync_dir(dir_path): """ Execute fsync on a directory ensuring it is synced to disk :param str dir_path: The directory to sync :raise OSError: If fail opening the directory """ dir_fd = os.open(dir_path, os.O_DIRECTORY) try: os.fsync(dir_fd) except OSError as e: # On some filesystem doing a fsync on a directory # raises an EINVAL error. Ignoring it is usually safe. if e.errno != errno.EINVAL: raise finally: os.close(dir_fd)
Example #3
Source File: remoteloop.py From osbuild with Apache License 2.0 | 5 votes |
def device(self, filename, offset=None, sizelimit=None): req = {} fds = [] fd = os.open(filename, os.O_RDWR) dir_fd = os.open("/dev", os.O_DIRECTORY) fds.append(fd) req["fd"] = 0 fds.append(dir_fd) req["dir_fd"] = 1 if offset: req["offset"] = offset if sizelimit: req["sizelimit"] = sizelimit self.client.send(req, fds=fds) os.close(dir_fd) os.close(fd) payload, _, _ = self.client.recv() path = os.path.join("/dev", payload["devname"]) try: yield path finally: os.unlink(path)
Example #4
Source File: loop.py From osbuild with Apache License 2.0 | 5 votes |
def __init__(self, minor, dir_fd=None): """ Parameters ---------- minor the minor number of the underlying device dir_fd : int, optional A directory file descriptor to a filesystem containing the underlying device node, or None to use /dev (default is None) Raises ------ UnexpectedDevice If the file in the expected device node location is not the expected device node """ self.devname = f"loop{minor}" self.minor = minor with contextlib.ExitStack() as stack: if not dir_fd: dir_fd = os.open("/dev", os.O_DIRECTORY) stack.callback(lambda: os.close(dir_fd)) self.fd = os.open(self.devname, os.O_RDWR, dir_fd=dir_fd) info = os.stat(self.fd) if ((not stat.S_ISBLK(info.st_mode)) or (not os.major(info.st_rdev) == self.LOOP_MAJOR) or (not os.minor(info.st_rdev) == minor)): raise UnexpectedDevice(minor, info.st_rdev, info.st_mode)
Example #5
Source File: loop.py From osbuild with Apache License 2.0 | 5 votes |
def __init__(self, dir_fd=None): """ Parameters ---------- dir_fd : int, optional A directory filedescriptor to a devtmpfs filesystem, or None to use /dev (default is None) """ if not dir_fd: dir_fd = os.open("/dev", os.O_DIRECTORY) self.fd = os.open("loop-control", os.O_RDWR, dir_fd=dir_fd)
Example #6
Source File: objectstore.py From osbuild with Apache License 2.0 | 5 votes |
def _open(self): """Open the directory and return the file descriptor""" with self.read() as path: fd = os.open(path, os.O_DIRECTORY) try: yield fd finally: os.close(fd)
Example #7
Source File: test_unit.py From py7zr with GNU Lesser General Public License v2.1 | 5 votes |
def test_helpers_readlink_dirfd(tmp_path): origin = tmp_path / 'parent' / 'original.txt' origin.parent.mkdir(parents=True, exist_ok=True) with origin.open('w') as f: f.write("Original") slink = tmp_path / "target" / "link" slink.parent.mkdir(parents=True, exist_ok=True) target = pathlib.Path('../parent/original.txt') slink.symlink_to(target, False) dirfd = os.open(str(origin.parent), os.O_RDONLY | os.O_DIRECTORY) assert py7zr.helpers.readlink(slink, dir_fd=dirfd) == target os.close(dirfd)
Example #8
Source File: zip.py From aptsources-cleanup with MIT License | 5 votes |
def _open_directory(self, path): return self.exitstack.enter_context( FileDescriptor(path, os.O_PATH | os.O_DIRECTORY | os.O_CLOEXEC))
Example #9
Source File: btrfs.py From integrations-core with BSD 3-Clause "New" or "Revised" License | 5 votes |
def __init__(self, mountpoint): self.fd = os.open(mountpoint, os.O_DIRECTORY)