rpm
4.17.0
|
File and path manipulation helper functions. More...
Files | |
file | rpmfileutil.h |
File and path manipulation helper functions. | |
Typedefs | |
typedef enum rpmCompressedMagic_e | rpmCompressedMagic |
Enumerations | |
enum | rpmCompressedMagic_e { COMPRESSED_NOT = 0 , COMPRESSED_OTHER = 1 , COMPRESSED_BZIP2 = 2 , COMPRESSED_ZIP = 3 , COMPRESSED_LZMA = 4 , COMPRESSED_XZ = 5 , COMPRESSED_LZIP = 6 , COMPRESSED_LRZIP = 7 , COMPRESSED_7ZIP = 8 , COMPRESSED_GEM = 9 , COMPRESSED_ZSTD = 10 } |
Functions | |
int | rpmDoDigest (int algo, const char *fn, int asAscii, unsigned char *digest) |
Calculate a file digest and size. More... | |
FD_t | rpmMkTemp (char *templ) |
Thin wrapper for mkstemp(3). More... | |
FD_t | rpmMkTempFile (const char *prefix, char **fn) |
Return file handle for a temporaray file. More... | |
int | rpmioMkpath (const char *path, mode_t mode, uid_t uid, gid_t gid) |
Insure that directories in path exist, creating as needed. More... | |
int | rpmMkdirs (const char *root, const char *pathstr) |
Create several directories (including parents if needed) in one go. More... | |
char * | rpmCleanPath (char *path) |
Canonicalize file path. More... | |
char * | rpmGenPath (const char *urlroot, const char *urlmdir, const char *urlfile) |
Merge 3 args into path, any or all of which may be a url. More... | |
char * | rpmGetPath (const char *path,...) RPM_GNUC_NULL_TERMINATED |
Return (malloc'ed) expanded, canonicalized, file path. More... | |
int | rpmIsGlob (const char *pattern, int quote) |
Check whether pattern contains any glob metacharacters. More... | |
int | rpmGlob (const char *patterns, int *argcPtr, ARGV_t *argvPtr) |
Return URL path(s) from a (URL prefixed) pattern glob. More... | |
char * | rpmEscapeSpaces (const char *s) |
Escape isspace(3) characters in string. More... | |
int | rpmFileIsCompressed (const char *file, rpmCompressedMagic *compressed) |
Return type of compression used in file. More... | |
int | rpmFileHasSuffix (const char *path, const char *suffix) |
Check if path (string) ends with given suffix. More... | |
char * | rpmGetCwd (void) |
Like getcwd() but the result is malloced. More... | |
File and path manipulation helper functions.
typedef enum rpmCompressedMagic_e rpmCompressedMagic |
enum rpmCompressedMagic_e |
Definition at line 20 of file rpmfileutil.h.
char* rpmCleanPath | ( | char * | path | ) |
Canonicalize file path.
path | path to canonicalize (in-place) |
int rpmDoDigest | ( | int | algo, |
const char * | fn, | ||
int | asAscii, | ||
unsigned char * | digest | ||
) |
Calculate a file digest and size.
algo | digest algorithm | |
fn | file name | |
asAscii | return digest as ascii string? | |
[out] | digest | address of calculated digest |
char* rpmEscapeSpaces | ( | const char * | s | ) |
Escape isspace(3) characters in string.
s | string |
int rpmFileHasSuffix | ( | const char * | path, |
const char * | suffix | ||
) |
Check if path (string) ends with given suffix.
path | (path) string |
suffix | suffix string to check for |
int rpmFileIsCompressed | ( | const char * | file, |
rpmCompressedMagic * | compressed | ||
) |
Return type of compression used in file.
file | name of file | |
[out] | compressed | address of compression type |
char* rpmGenPath | ( | const char * | urlroot, |
const char * | urlmdir, | ||
const char * | urlfile | ||
) |
Merge 3 args into path, any or all of which may be a url.
The leading part of the first URL encountered is used for the result, other URL prefixes are discarded, permitting a primitive form of URL inheiritance.
urlroot | root URL (often path to chroot, or NULL) |
urlmdir | directory URL (often a directory, or NULL) |
urlfile | file URL (often a file, or NULL) |
char* rpmGetCwd | ( | void | ) |
Like getcwd() but the result is malloced.
char* rpmGetPath | ( | const char * | path, |
... | |||
) |
Return (malloc'ed) expanded, canonicalized, file path.
path | macro(s) to expand (NULL terminates list) |
int rpmGlob | ( | const char * | patterns, |
int * | argcPtr, | ||
ARGV_t * | argvPtr | ||
) |
Return URL path(s) from a (URL prefixed) pattern glob.
patterns | glob pattern | |
[out] | *argcPtr | no. of paths |
[out] | *argvPtr | ARGV_t array of paths |
int rpmioMkpath | ( | const char * | path, |
mode_t | mode, | ||
uid_t | uid, | ||
gid_t | gid | ||
) |
Insure that directories in path exist, creating as needed.
path | directory path |
mode | directory mode (if created) |
uid | directory uid (if created), or -1 to skip |
gid | directory uid (if created), or -1 to skip |
int rpmIsGlob | ( | const char * | pattern, |
int | quote | ||
) |
Check whether pattern contains any glob metacharacters.
pattern | glob pattern |
quote | allow backslash quoting of metacharacters? |
int rpmMkdirs | ( | const char * | root, |
const char * | pathstr | ||
) |
Create several directories (including parents if needed) in one go.
Macros in pathstr will be expanded in the process.
root | leading root directory (or NULL for none) |
pathstr | list of directories separated with : |
FD_t rpmMkTemp | ( | char * | templ | ) |
Thin wrapper for mkstemp(3).
templ | template for temporary filename |
FD_t rpmMkTempFile | ( | const char * | prefix, |
char ** | fn | ||
) |
Return file handle for a temporaray file.
A unique temporaray file path will be created in [prefix/]%{_tmppath} directory. The file name and the open file handle are returned.
prefix | leading part of temp file path | |
[out] | fn | temp file name (or NULL) |