rpmrpc.c File Reference
RPMIO.
`#include "system.h"`
`#include <rpmio_internal.h>`
`#include <rpmmacro.h>`
`#include <rpmdav.h>`
`#include <rpmhash.h>`
`#include <ugid.h>`
`#include "debug.h"`
Include dependency graph for rpmrpc.c:

Go to the source code of this file.

## Macros

#define | _RPMAV_INTERNAL
#define | _RPMDAV_INTERNAL
#define | g_strdup xstrdup
#define | g_free free
#define | MAXCOLS 30
#define | alloca_strdup(_s) strcpy(alloca(strlen(_s)+1), (_s))

## Enumerations

enum | ftpSysCall_t { DO_FTP_STAT = 1, DO_FTP_LSTAT = 2, DO_FTP_READLINK = 3, DO_FTP_ACCESS = 4, DO_FTP_GLOB = 5 }

## Functions

static int | ftpMkdir (const char *path, mode_t mode)
static int | ftpChdir (const char *path)
static int | ftpRmdir (const char *path)
static int | ftpRename (const char *oldpath, const char *newpath)
static int | ftpUnlink (const char *path)
int | Mkdir (const char *path, mode_t mode)
| mkdir(2) clone. More...
int | Chdir (const char *path)
| chdir(2) clone. More...
int | Rmdir (const char *path)
| rmdir(2) clone. More...
int | Chroot (const char *path)
| chroot(2) clone. More...
int | Open (const char *path, int flags, mode_t mode)
| open(2) clone. More...
int | Rename (const char *oldpath, const char *newpath)
| rename(2) clone. More...
int | Link (const char *oldpath, const char *newpath)
| link(2) clone. More...
int | Unlink (const char *path)
| unlink(2) clone. More...
static int | vfs_split_text (char *p)
static int | is_num (int idx)
static int | is_dos_date (const char *str)
static int | is_week (const char *str, struct tm *tim)
static int | is_month (const char *str, struct tm *tim)
static int | is_time (const char *str, struct tm *tim)
static int | is_year (const char *str, struct tm *tim)
static int | vfs_parse_filetype (char c)
static int | vfs_parse_filemode (const char *p)
static int | vfs_parse_filedate (int idx, time_t *t)
static int | vfs_parse_ls_lga (char *p, struct stat *st, const char **filename, const char **linkname)
static int | ftpNLST (const char *url, ftpSysCall_t ftpSysCall, struct stat *st, char *rlbuf, size_t rlbufsiz)
static const char * | statstr (const struct stat *st, char *buf)
static int | ftpStat (const char *path, struct stat *st)
static int | ftpLstat (const char *path, struct stat *st)
static int | ftpReadlink (const char *path, char *buf, size_t bufsiz)
static DIR * | ftpOpendir (const char *path)
static char * | ftpRealpath (const char *path, char *resolved_path)
int | Stat (const char *path, struct stat *st)
| stat(2) clone. More...
int | Lstat (const char *path, struct stat *st)
| lstat(2) clone. More...
int | Fstat (FD_t fd, struct stat *st)
| fstat(2) clone. More...
int | Chown (const char *path, uid_t owner, gid_t group)
| chown(2) clone. More...
int | Fchown (FD_t fd, uid_t owner, gid_t group)
| fchown(2) clone. More...
int | Lchown (const char *path, uid_t owner, gid_t group)
| lchown(2) clone. More...
int | Chmod (const char *path, mode_t mode)
| chmod(2) clone. More...
int | Fchmod (FD_t fd, mode_t mode)
| fchmod(2) clone. More...
int | Mkfifo (const char *path, mode_t mode)
| mkfifo(3) clone. More...
int | Mknod (const char *path, mode_t mode, dev_t dev)
| mknod(3) clone. More...
int | Utime (const char *path, const struct utimbuf *buf)
int | Utimes (const char *path, const struct timeval times[2])
int | Symlink (const char *oldpath, const char *newpath)
| symlink(3) clone. More...
int | Readlink (const char *path, char *buf, size_t bufsiz)
| readlink(2) clone. More...
int | Access (const char *path, int amode)
| access(2) clone. More...
int | Glob_pattern_p (const char *pattern, int quote)
| glob_pattern_p(3) clone. More...
int | Glob_error (const char *epath, int eerrno)
| glob_error(3) clone. More...
int | Glob (const char *pattern, int flags, int errfunc(const char *epath, int eerrno), void *_pglob)
| glob(3) clone. More...
void | Globfree (void *_pglob)
| globfree(3) clone. More...
DIR * | Opendir (const char *path)
| opendir(3) clone. More...
struct dirent * | Readdir (DIR *dir)
| readdir(3) clone. More...
int | Closedir (DIR *dir)
| closedir(3) clone. More...
char * | Realpath (const char *path, char *resolved_path)
| realpath(3) clone. More...
off_t | Lseek (int fdno, off_t offset, int whence)
| lseek(2) clone. More...

## Variables

const char * | _chroot_prefix = NULL
static int | current_mday
static int | current_mon
static int | current_year
static char * | columns [30]
static int | column_ptr [30]
static size_t | ftpBufAlloced
static char * | ftpBuf

## Macro Definition Documentation

#define _RPMAV_INTERNAL

Definition at line 10 of file rpmrpc.c.

#define _RPMDAV_INTERNAL

Definition at line 11 of file rpmrpc.c.

#define alloca_strdup | ( |  | _s | ) | strcpy(alloca(strlen(_s)+1), (_s))

Definition at line 952 of file rpmrpc.c.

Referenced by ftpNLST().

#define g_free free

Definition at line 400 of file rpmrpc.c.

Referenced by vfs_parse_ls_lga().

#define g_strdup xstrdup

Definition at line 399 of file rpmrpc.c.

Referenced by vfs_parse_ls_lga().

#define MAXCOLS 30

Definition at line 413 of file rpmrpc.c.

Referenced by vfs_split_text().

## Enumeration Type Documentation

enum ftpSysCall_t

Enumerator
DO_FTP_STAT |
DO_FTP_LSTAT |
DO_FTP_READLINK |
DO_FTP_ACCESS |
DO_FTP_GLOB |

Definition at line 935 of file rpmrpc.c.

## Function Documentation

int Access | ( | const char * | path,
|  | int | amode
| ) |  |

access(2) clone.

Todo:
  Implement remotely.

Definition at line 1755 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by createDir(), main(), repoTestSetupDirs(), rpmdbRebuild(), and rpmioAccess().

int Chdir | ( | const char * | path | ) |

chdir(2) clone.

Definition at line 103 of file rpmrpc.c.

References _rpmio_debug, errno, ftpChdir(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by enterChroot(), getOutputFrom(), leaveChroot(), rpmpsmStage(), rpmtsRun(), and runScript().

int Chmod | ( | const char * | path,
|  | mode_t | mode
| ) |  |

chmod(2) clone.

Todo:
  Implement remotely.

Definition at line 1526 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by compare(), iosmStage(), mtreeMiss(), rpmdbMoveDatabase(), and sql_open().

int Chown | ( | const char * | path,
|  | uid_t | owner,
|  | gid_t | group
| ) |  |

chown(2) clone.

Todo:
  Implement remotely.

Definition at line 1447 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by compare(), createDir(), iosmStage(), mtreeMiss(), rpmdbMoveDatabase(), and rpmioMkpath().

int Chroot | ( | const char * | path | ) |

chroot(2) clone.

Todo:
  Implement remotely.

Definition at line 172 of file rpmrpc.c.

References _chroot_prefix, _free(), _rpmio_debug, errno, rpmGetPath(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by enterChroot(), leaveChroot(), rpmpsmStage(), rpmtsRun(), and runScript().

int Closedir | ( | DIR * | dir | ) |

closedir(3) clone.

Definition at line 1930 of file rpmrpc.c.

References _rpmio_debug, and avClosedir().

Referenced by Fts_open(), Glob(), and repoDoFinalMove().

int Fchmod | ( | FD_t | fd,
|  | mode_t | mode
| ) |  |

fchmod(2) clone.

Todo:
  Implement remotely.

Definition at line 1552 of file rpmrpc.c.

References _rpmio_debug, errno, fdGetOPath(), Fileno(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

int Fchown | ( | FD_t | fd,
|  | uid_t | owner,
|  | gid_t | group
| ) |  |

fchown(2) clone.

Todo:
  Implement remotely.

Definition at line 1473 of file rpmrpc.c.

References _rpmio_debug, errno, fdGetOPath(), Fileno(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

int Fstat | ( | FD_t | fd,
|  | struct stat * | st
| ) |  |

fstat(2) clone.

Definition at line 1397 of file rpmrpc.c.

References _rpmio_debug, _FD_s::contentLength, errno, fdGetOPath(), Fileno(), hashFunctionString(), _FD_s::lastModified, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by printSize(), rpmiobSlurp(), and rpmReadHeader().

static int ftpChdir | ( | const char * | path | ) |

static

Definition at line 40 of file rpmrpc.c.

References ftpCmd().

Referenced by Chdir(), and ftpNLST().

static int ftpLstat | ( | const char * | path,
|  | struct stat * | st
| ) |  |

static

Definition at line 1190 of file rpmrpc.c.

References _ftp_debug, DO_FTP_LSTAT, ftpNLST(), hashFunctionString(), and statstr().

Referenced by Lstat().

static int ftpMkdir | ( | const char * | path,
|  | mode_t | mode
| ) |  |

static

Definition at line 24 of file rpmrpc.c.

References ftpCmd().

Referenced by Mkdir().

static int ftpNLST | ( | const char * | url,
|  | ftpSysCall_t | ftpSysCall,
|  | struct stat * | st,
|  | char * | rlbuf,
|  | size_t | rlbufsiz
| ) |  |

static

Definition at line 954 of file rpmrpc.c.

References _url_iobuf_size, alloca_strdup, DO_FTP_ACCESS, DO_FTP_GLOB, DO_FTP_LSTAT, DO_FTP_READLINK, DO_FTP_STAT, fdFgets(), fdLink(), ftpBuf, ftpBufAlloced, ftpChdir(), ftpOpen(), ftpReq(), urlinfo_s::openError, ufdClose(), urlPath(), vfs_parse_ls_lga(), xcalloc(), and xrealloc().

Referenced by ftpLstat(), ftpOpendir(), ftpReadlink(), and ftpStat().

static DIR* ftpOpendir | ( | const char * | path | ) |

static

Definition at line 1220 of file rpmrpc.c.

References _ftp_debug, avContextCreate(), avContextDestroy(), avOpendir(), DO_FTP_GLOB, errno, ftpBuf, ftpNLST(), S_IFSOCK, and xcalloc().

Referenced by Opendir().

static int ftpReadlink | ( | const char * | path,
|  | char * | buf,
|  | size_t | bufsiz
| ) |  |

static

Definition at line 1208 of file rpmrpc.c.

References _ftp_debug, DO_FTP_READLINK, and ftpNLST().

Referenced by Readlink().

static char* ftpRealpath | ( | const char * | path,
|  | char * | resolved_path
| ) |  |

static

Definition at line 1321 of file rpmrpc.c.

References xstrdup().

Referenced by Realpath().

static int ftpRename | ( | const char * | oldpath,
|  | const char * | newpath
| ) |  |

static

Definition at line 54 of file rpmrpc.c.

References ftpCmd().

Referenced by Rename().

static int ftpRmdir | ( | const char * | path | ) |

static

Definition at line 47 of file rpmrpc.c.

References ftpCmd().

Referenced by Rmdir().

static int ftpStat | ( | const char * | path,
|  | struct stat * | st
| ) |  |

static

Definition at line 1171 of file rpmrpc.c.

References _ftp_debug, DO_FTP_STAT, ftpNLST(), hashFunctionString(), and statstr().

Referenced by Stat().

static int ftpUnlink | ( | const char * | path | ) |

static

Definition at line 64 of file rpmrpc.c.

References ftpCmd().

Referenced by Unlink().

int Glob | ( | const char * | pattern,
|  | int | flags,
|  | int | errfuncconst char *epath, int eerrno,
|  | void * | _pglob
| ) |  |

glob(3) clone.

Definition at line 1832 of file rpmrpc.c.

References _rpmio_debug, Closedir(), getenv(), glob_t::gl_closedir, glob_t::gl_lstat, glob_t::gl_opendir, glob_t::gl_readdir, glob_t::gl_stat, glob(), GLOB_ALTDIRFUNC, GLOB_TILDE, Lstat(), Opendir(), Readdir(), Stat(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by rpmGlob().

int Glob_error | ( | const char * | epath,
|  | int | eerrno
| ) |  |

glob_error(3) clone.

Definition at line 1826 of file rpmrpc.c.

Referenced by rpmGlob().

int Glob_pattern_p | ( | const char * | pattern,
|  | int | quote
| ) |  |

glob_pattern_p(3) clone.

Definition at line 1786 of file rpmrpc.c.

References URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, and urlPath().

Referenced by handleOneTrigger(), initGlobs(), processBinaryFile(), rpmdbTriggerGlobs(), rpmGlob(), and runImmedTriggers().

void Globfree | ( | void * | _pglob | ) |

globfree(3) clone.

Definition at line 1876 of file rpmrpc.c.

References _rpmio_debug, and globfree().

Referenced by rpmGlob().

static int is_dos_date | ( | const char * | str | ) |

static

Definition at line 452 of file rpmrpc.c.

Referenced by vfs_parse_filedate(), and vfs_parse_ls_lga().

static int is_month | ( | const char * | str,
|  | struct tm * | tim
| ) |  |

static

Definition at line 479 of file rpmrpc.c.

Referenced by vfs_parse_filedate(), and vfs_parse_ls_lga().

static int is_num | ( | int | idx | ) |

static

Definition at line 443 of file rpmrpc.c.

References columns.

Referenced by vfs_parse_filedate(), and vfs_parse_ls_lga().

static int is_time | ( | const char * | str,
|  | struct tm * | tim
| ) |  |

static

Definition at line 496 of file rpmrpc.c.

Referenced by vfs_parse_filedate().

static int is_week | ( | const char * | str,
|  | struct tm * | tim
| ) |  |

static

Definition at line 462 of file rpmrpc.c.

Referenced by vfs_parse_filedate(), and vfs_parse_ls_lga().

static int is_year | ( | const char * | str,
|  | struct tm * | tim
| ) |  |

static

Definition at line 515 of file rpmrpc.c.

Referenced by vfs_parse_filedate().

int Lchown | ( | const char * | path,
|  | uid_t | owner,
|  | gid_t | group
| ) |  |

lchown(2) clone.

Todo:
  Implement remotely.

Definition at line 1500 of file rpmrpc.c.

References _rpmio_debug, errno, lchown, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by iosmStage().

int Link | ( | const char * | oldpath,
|  | const char * | newpath
| ) |  |

link(2) clone.

Definition at line 317 of file rpmrpc.c.

References _rpmio_debug, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, urlPath(), and xstrncasecmp().

Referenced by iosmStage().

off_t Lseek | ( | int | fdno,
|  | off_t | offset,
|  | int | whence
| ) |  |

lseek(2) clone.

Todo:
  Implement SEEK_HOLE/SEEK_DATA.

Definition at line 2027 of file rpmrpc.c.

References _rpmio_debug.

int Lstat | ( | const char * | path,
|  | struct stat * | st
| ) |  |

lstat(2) clone.

Definition at line 1363 of file rpmrpc.c.

References _rpmio_debug, davLstat(), errno, ftpLstat(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by addFile(), checkOwners(), Fts_open(), Glob(), iosmStage(), main(), prepFetch(), rpmfiDecideFate(), rpmQueryVerify(), rpmtsRun(), rpmVerifyFile(), and statFormat().

int Mkdir | ( | const char * | path,
|  | mode_t | mode
| ) |  |

mkdir(2) clone.

Definition at line 72 of file rpmrpc.c.

References _rpmio_debug, davMkdir(), ftpMkdir(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by iosmStage(), mtreeMiss(), repoMkdir(), rpmdbRebuild(), rpmioMkpath(), and rpmMkdirPath().

int Mkfifo | ( | const char * | path,
|  | mode_t | mode
| ) |  |

mkfifo(3) clone.

Todo:
  Implement remotely.

Definition at line 1579 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by iosmStage().

int Mknod | ( | const char * | path,
|  | mode_t | mode,
|  | dev_t | dev
| ) |  |

mknod(3) clone.

Todo:
  Implement remotely.

Definition at line 1605 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by iosmStage().

int Open | ( | const char * | path,
|  | int | flags,
|  | mode_t | mode
| ) |  |

open(2) clone.

Todo:
  Implement remotely.

Definition at line 210 of file rpmrpc.c.

References _chroot_prefix, _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by db_init().

DIR* Opendir | ( | const char * | path | ) |

opendir(3) clone.

Definition at line 1884 of file rpmrpc.c.

References _rpmio_debug, davOpendir(), ftpOpendir(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by Fts_open(), Glob(), and repoDoFinalMove().

struct dirent* Readdir | ( | DIR * | dir | ) |

read

readdir(3) clone.

Definition at line 1919 of file rpmrpc.c.

References _rpmio_debug, and avReaddir().

Referenced by Fts_open(), Glob(), and repoDoFinalMove().

int Readlink | ( | const char * | path,
|  | char * | buf,
|  | size_t | bufsiz
| ) |  |

readlink(2) clone.

Todo:
  Implement remotely.

Definition at line 1717 of file rpmrpc.c.

References _rpmio_debug, errno, ftpReadlink(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by genCpioListAndHeader(), iosmStage(), rlink(), rpmfiDecideFate(), rpmVerifyFile(), and statFormat().

char* Realpath | ( | const char * | path,
|  | char * | resolved_path
| ) |  |

realpath(3) clone.

Definition at line 1941 of file rpmrpc.c.

References _free(), _rpmio_debug, davRealpath(), ftpRealpath(), PATH_MAX, realpath(), rpmExpand(), rpmGetPath(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, urlPath(), and xstrdup().

Referenced by doLookup(), main(), repoDoPkgMetadata(), repoRealpath(), rpmdbURIPath(), rpmQueryVerify(), and rpmReadHeader().

int Rename | ( | const char * | oldpath,
|  | const char * | newpath
| ) |  |

rename(2) clone.

Definition at line 260 of file rpmrpc.c.

References _rpmio_debug, davRename(), ftpRename(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, urlPath(), and xstrncasecmp().

Referenced by iosmStage(), repoDoFinalMove(), repoDoRepoMetadata(), rpmdbMoveDatabase(), and rpmReSign().

int Rmdir | ( | const char * | path | ) |

rmdir(2) clone.

Definition at line 138 of file rpmrpc.c.

References _rpmio_debug, davRmdir(), ftpRmdir(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by buildSpec(), iosmStage(), mtreeVWalk(), repoDoFinalMove(), rpmdbRebuild(), and rpmdbRemoveDatabase().

int Stat | ( | const char * | path,
|  | struct stat * | st
| ) |  |

stat(2) clone.

Definition at line 1329 of file rpmrpc.c.

References _rpmio_debug, davStat(), errno, ftpStat(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by cacheStashLatest(), db3open(), Fts_open(), getFilesystemList(), Glob(), iosmStage(), main(), makeGPGSignature(), mtreeMiss(), packageBinaries(), populateInstallHeader(), processSourceFiles(), rpmAddSignature(), rpmcliEvalSlurp(), rpmdbMoveDatabase(), rpmdsSysinfo(), rpmGetFilesystemUsage(), rpmioExists(), rpmioFileExists(), rpmioMkpath(), and rpmMkdirPath().

static const char* statstr | ( | const struct stat * | st,
|  | char * | buf
| ) |  |

static

Definition at line 1145 of file rpmrpc.c.

Referenced by ftpLstat(), and ftpStat().

int Symlink | ( | const char * | oldpath,
|  | const char * | newpath
| ) |  |

symlink(3) clone.

Todo:
  Implement remotely.

Definition at line 1687 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by iosmStage(), and mtreeMiss().

int Unlink | ( | const char * | path | ) |

unlink(2) clone.

Definition at line 367 of file rpmrpc.c.

References _rpmio_debug, davUnlink(), ftpUnlink(), URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by buildSpec(), db3open(), fsmStage(), iosmStage(), isSpecFile(), makeGPGSignature(), makeHDRSignature(), mtreeVWalk(), repoDoFinalMove(), repoDoRepoMetadata(), rpmdbExportInfo(), rpmdbMoveDatabase(), rpmdbRemoveDatabase(), rpmReSign(), rpmtsRollback(), runScript(), sql_close(), urlGetFile(), and writeRPM().

int Utime | ( | const char * | path,
|  | const struct utimbuf * | buf
| ) |  |

Definition at line 1633 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

Referenced by iosmStage(), rpmdbExportInfo(), and rpmdbMoveDatabase().

int Utimes | ( | const char * | path,
|  | const struct timeval | times[2]
| ) |  |

Definition at line 1660 of file rpmrpc.c.

References _rpmio_debug, errno, URL_IS_DASH, URL_IS_FTP, URL_IS_HKP, URL_IS_HTTP, URL_IS_HTTPS, URL_IS_PATH, URL_IS_UNKNOWN, and urlPath().

static int vfs_parse_filedate | ( | int | idx,
|  | time_t * | t
| ) |  |

static

Definition at line 625 of file rpmrpc.c.

References columns, current_mday, current_mon, current_year, is_dos_date(), is_month(), is_num(), is_time(), is_week(), and is_year().

Referenced by vfs_parse_ls_lga().

static int vfs_parse_filemode | ( | const char * | p | ) |

static

Definition at line 566 of file rpmrpc.c.

Referenced by vfs_parse_ls_lga().

static int vfs_parse_filetype | ( | char | c | ) |

static

Definition at line 547 of file rpmrpc.c.

References S_IFSOCK.

Referenced by vfs_parse_ls_lga().

static int vfs_parse_ls_lga | ( | char * | p,
|  | struct stat * | st,
|  | const char ** | filename,
|  | const char ** | linkname
| ) |  |

static

Definition at line 734 of file rpmrpc.c.

References column_ptr, columns, g_free, g_strdup, gnameToGid(), is_dos_date(), is_month(), is_num(), is_week(), S_ISLNK, unameToUid(), vfs_parse_filedate(), vfs_parse_filemode(), vfs_parse_filetype(), vfs_split_text(), and xcalloc().

Referenced by ftpNLST().

static int vfs_split_text | ( | char * | p | ) |

static

Definition at line 421 of file rpmrpc.c.

References column_ptr, columns, and MAXCOLS.

Referenced by vfs_parse_ls_lga().

## Variable Documentation

const char* _chroot_prefix = NULL

Definition at line 170 of file rpmrpc.c.

Referenced by Chroot(), and Open().

int column_ptr[30]

static

Definition at line 418 of file rpmrpc.c.

Referenced by vfs_parse_ls_lga(), and vfs_split_text().

char* columns[30]

static

Definition at line 416 of file rpmrpc.c.

Referenced by is_num(), vfs_parse_filedate(), vfs_parse_ls_lga(), and vfs_split_text().

int current_mday

static

Definition at line 406 of file rpmrpc.c.

Referenced by vfs_parse_filedate().

int current_mon

static

Definition at line 408 of file rpmrpc.c.

Referenced by vfs_parse_filedate().

int current_year

static

Definition at line 410 of file rpmrpc.c.

Referenced by vfs_parse_filedate().

char* ftpBuf

static

Definition at line 950 of file rpmrpc.c.

Referenced by ftpNLST(), and ftpOpendir().

size_t ftpBufAlloced

static

Definition at line 945 of file rpmrpc.c.

Referenced by ftpNLST().