rpm  5.4.14
Macros | Functions | Variables
ar.c File Reference

Handle ar(1) archives. More...

#include "system.h"
#include <rpmio_internal.h>
#include <rpmmacro.h>
#include <ugid.h>
#include <ar.h>
#include <iosm.h>
#include "debug.h"
Include dependency graph for ar.c:

Go to the source code of this file.

Macros

#define _IOSM_INTERNAL
 
#define _IOSMRC(_rc)   if ((_rc) <= 0) return ((_rc) ? (int) -rc : IOSMERR_HDR_TRAILER)
 

Functions

static int strntoul (const char *str, char **endptr, int base, size_t num)
 Convert string to unsigned integer (with buffer size check). More...
 
static ssize_t arRead (void *_iosm, void *buf, size_t count)
 
int arHeaderRead (void *_iosm, struct stat *st)
 Read ar(1) header. More...
 
static ssize_t arWrite (void *_iosm, const void *buf, size_t count)
 
int arHeaderWrite (void *_iosm, struct stat *st)
 Write ar(1) header. More...
 
int arTrailerWrite (void *_iosm)
 Write ar(1) trailer. More...
 

Variables

int _ar_debug = 0
 

Detailed Description

Handle ar(1) archives.

Definition in file ar.c.

Macro Definition Documentation

#define _IOSM_INTERNAL

Definition at line 15 of file ar.c.

#define _IOSMRC (   _rc)    if ((_rc) <= 0) return ((_rc) ? (int) -rc : IOSMERR_HDR_TRAILER)

Definition at line 56 of file ar.c.

Referenced by arHeaderRead(), arHeaderWrite(), and arTrailerWrite().

Function Documentation

int arHeaderRead ( void _iosm,
struct stat *  st 
)
int arHeaderWrite ( void _iosm,
struct stat *  st 
)
static ssize_t arRead ( void _iosm,
void buf,
size_t  count 
)
static
int arTrailerWrite ( void _iosm)

Write ar(1) trailer.

Return values
_iosmfile path and stat info
Returns
0 on success

Definition at line 309 of file ar.c.

References _ar_debug, _iosmNext, _IOSMRC, arWrite(), fprintf(), IOSM_PAD, NULL, and rc.

Referenced by fsmSetup(), and iosmSetup().

static ssize_t arWrite ( void _iosm,
const void buf,
size_t  count 
)
static
static int strntoul ( const char *  str,
char **  endptr,
int  base,
size_t  num 
)
static

Convert string to unsigned integer (with buffer size check).

Parameters
strinput string
Return values
*endptr1st character not processed
Parameters
basenumerical conversion base
nummax no. of bytes to read
Returns
converted integer

Definition at line 33 of file ar.c.

References alloca(), buf, NULL, ret, and strncpy().

Referenced by arHeaderRead().

Variable Documentation

int _ar_debug = 0

Definition at line 23 of file ar.c.

Referenced by arHeaderRead(), arHeaderWrite(), arRead(), arTrailerWrite(), and arWrite().