OpenDNSSEC-signer  1.4.5
Macros | Functions
file.c File Reference
#include "config.h"
#include "shared/file.h"
#include "shared/log.h"
#include <ctype.h>
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
Include dependency graph for file.c:

Go to the source code of this file.

Macros

#define BUFFER_SIZE   (16 * 1024) /* use 16K buffers */

Functions

const char * ods_file_mode2str (const char *mode)
int ods_fgetc (FILE *fd, unsigned int *line_nr)
int ods_skip_whitespace (FILE *fd, unsigned int *line_nr)
char * ods_build_path (const char *file, const char *suffix, int dir, int no_slash)
FILE * ods_fopen (const char *file, const char *dir, const char *mode)
void ods_fclose (FILE *fd)
ssize_t ods_writen (int fd, const void *vptr, size_t n)
time_t ods_file_lastmodified (const char *file)
int ods_strcmp (const char *s1, const char *s2)
int ods_strlowercmp (const char *str1, const char *str2)
const char * ods_replace (const char *str, const char *oldstr, const char *newstr)
ods_status ods_file_copy (const char *file1, const char *file2, long startpos, int append)
char * ods_dir_name (const char *file)
void ods_chown (const char *file, uid_t uid, gid_t gid, int getdir)
void ods_str_trim (char *str)
void ods_str_list_add (char ***list, char *str)

Macro Definition Documentation

#define BUFFER_SIZE   (16 * 1024) /* use 16K buffers */

File access.

Definition at line 46 of file file.c.

Referenced by ods_file_copy().

Function Documentation

char* ods_build_path ( const char *  file,
const char *  suffix,
int  dir,
int  no_slash 
)

Construct file name. (StrAppend?, snprintf?)

Definition at line 125 of file file.c.

References ods_log_crit().

Referenced by addns_read(), addns_write(), adfile_write(), axfr(), ixfr(), soa_request(), zone_backup2(), and zone_recover2().

void ods_chown ( const char *  file,
uid_t  uid,
gid_t  gid,
int  getdir 
)

(Create) and change ownership of directories

Definition at line 513 of file file.c.

References ods_dir_name(), ods_log_debug(), ods_log_error(), and ods_log_warning().

char* ods_dir_name ( const char *  file)

Get directory part of filename.

Definition at line 482 of file file.c.

References ods_log_assert.

Referenced by ods_chown().

void ods_fclose ( FILE *  fd)
int ods_fgetc ( FILE *  fd,
unsigned int *  line_nr 
)

Get next char.

Definition at line 79 of file file.c.

References ods_log_assert, and ods_log_crit().

Referenced by adutil_readline_frm_file(), and ods_skip_whitespace().

ods_status ods_file_copy ( const char *  file1,
const char *  file2,
long  startpos,
int  append 
)
time_t ods_file_lastmodified ( const char *  file)

Get file last modified.

Definition at line 288 of file file.c.

References ods_fclose(), ods_fopen(), ods_log_assert, ods_log_debug(), and ods_log_warning().

Referenced by signconf_update(), and zonelist_update().

const char* ods_file_mode2str ( const char *  mode)

Convert file mode to readable string.

Definition at line 57 of file file.c.

References ods_strcmp().

Referenced by ods_fopen().

FILE* ods_fopen ( const char *  file,
const char *  dir,
const char *  mode 
)
const char* ods_replace ( const char *  str,
const char *  oldstr,
const char *  newstr 
)

Replace a substring in string.

Definition at line 369 of file file.c.

References SYSTEM_MAXLEN.

int ods_skip_whitespace ( FILE *  fd,
unsigned int *  line_nr 
)

Skip white space.

Definition at line 103 of file file.c.

References ods_fgetc(), and ods_log_assert.

void ods_str_list_add ( char ***  list,
char *  str 
)

Add a string to a list of strings. Taken from ods-enforcer.

List is NULL, allocate new

Definition at line 588 of file file.c.

References ods_fatal_exit().

void ods_str_trim ( char *  str)

Remove leading and trailing whitespace.

Definition at line 549 of file file.c.

int ods_strcmp ( const char *  s1,
const char *  s2 
)
int ods_strlowercmp ( const char *  str1,
const char *  str2 
)

Compare a string lowercased

Definition at line 337 of file file.c.

Referenced by tsig_lookup_algo(), and tsig_lookup_by_name().

ssize_t ods_writen ( int  fd,
const void *  vptr,
size_t  n 
)

Write to file descriptor.

Definition at line 260 of file file.c.