rpm  4.17.0
rpmio.h
Go to the documentation of this file.
1 #ifndef H_RPMIO
2 #define H_RPMIO
3 
10 #include <sys/types.h>
11 #include <sys/stat.h>
12 #include <stdio.h>
13 #include <stdlib.h>
14 #include <unistd.h>
15 
16 #include <rpm/rpmtypes.h>
17 #include <rpm/rpmsw.h>
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
25 typedef const struct FDIO_s * FDIO_t;
26 
27 
35 const char * Fstrerror(FD_t fd);
36 
40 ssize_t Fread(void * buf, size_t size, size_t nmemb, FD_t fd);
41 
45 ssize_t Fwrite(const void * buf, size_t size, size_t nmemb, FD_t fd);
46 
50 int Fseek(FD_t fd, off_t offset, int whence);
51 
55 off_t Ftell(FD_t fd);
56 
60 int Fclose( FD_t fd);
61 
64 FD_t Fdopen(FD_t ofd, const char * fmode);
65 
69 FD_t Fopen(const char * path,
70  const char * fmode);
71 
72 
76 int Fflush(FD_t fd);
77 
81 int Ferror(FD_t fd);
82 
86 int Fileno(FD_t fd);
87 
91 int Fcntl(FD_t fd, int op, void *lip);
92 
96 const char * Fdescr(FD_t fd);
97 
104 off_t fdSize(FD_t fd);
105 
108 FD_t fdDup(int fdno);
109 
113 
117 
120 off_t ufdCopy(FD_t sfd, FD_t tfd);
121 
125 typedef enum fdOpX_e {
131  FDSTAT_MAX = 5
133 
137 rpmop fdOp(FD_t fd, fdOpX opx);
138 
139 #ifdef __cplusplus
140 }
141 #endif
142 
143 #endif /* H_RPMIO */
const char * Fdescr(FD_t fd)
Get informative description (eg file name) from fd for diagnostic output.
int Fseek(FD_t fd, off_t offset, int whence)
fseek(3) clone.
const char * Fstrerror(FD_t fd)
strerror(3) clone.
off_t Ftell(FD_t fd)
ftell(3) clone.
int Ferror(FD_t fd)
ferror(3) clone.
FD_t Fdopen(FD_t ofd, const char *fmode)
off_t ufdCopy(FD_t sfd, FD_t tfd)
off_t fdSize(FD_t fd)
FD_t Fopen(const char *path, const char *fmode)
fopen(3) clone.
FD_t fdLink(FD_t fd)
const struct FDIO_s * FDIO_t
Definition: rpmio.h:25
fdOpX_e
Identify per-desciptor I/O operation statistics.
Definition: rpmio.h:125
enum fdOpX_e fdOpX
Identify per-desciptor I/O operation statistics.
int Fflush(FD_t fd)
fflush(3) clone.
ssize_t Fread(void *buf, size_t size, size_t nmemb, FD_t fd)
Like fread(3) but with read(3)-style return values.
int Fclose(FD_t fd)
fclose(3) clone.
FD_t fdFree(FD_t fd)
FD_t fdDup(int fdno)
ssize_t Fwrite(const void *buf, size_t size, size_t nmemb, FD_t fd)
Like fwrite(3) but with write(3)-style return values.
int Fcntl(FD_t fd, int op, void *lip)
fcntl(2) clone.
int Fileno(FD_t fd)
fileno(3) clone.
rpmop fdOp(FD_t fd, fdOpX opx)
@ FDSTAT_SEEK
Definition: rpmio.h:128
@ FDSTAT_READ
Definition: rpmio.h:126
@ FDSTAT_WRITE
Definition: rpmio.h:127
@ FDSTAT_CLOSE
Definition: rpmio.h:129
@ FDSTAT_MAX
Definition: rpmio.h:131
@ FDSTAT_DIGEST
Definition: rpmio.h:130
struct _FD_s * FD_t
RPM IO file descriptor type.
Definition: rpmtypes.h:99
Cumulative statistics for an operation.
Definition: rpmsw.h:42