ELinks 0.18.0
dcigettext.c File Reference
#include <sys/types.h>
#include <errno.h>
#include <stddef.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include "elinks.h"
#include "intl/gettext/gettextP.h"
#include "intl/libintl.h"
#include "intl/gettext/hash-string.h"
#include "util/string.h"
#include <limits.h>
Include dependency graph for dcigettext.c:

Data Structures

struct  known_translation_t
struct  block_list

Macros

#define _GNU_SOURCE   1
#define PATH_INCR   32
#define _POSIX_PATH_MAX   255
#define PATH_MAX   _POSIX_PATH_MAX
#define IS_ABSOLUTE_PATH(P)
#define IS_PATH_WITH_DIR(P)
#define ADD_BLOCK(list, addr)
#define FREE_BLOCKS(list)
#define alloca(size)
#define getuid()
#define getgid()
#define geteuid()
#define getegid()
#define ENABLE_SECURE   (enable_secure == 1)
#define DETERMINE_SECURE

Typedefs

typedef char transmem_block_t

Functions

void * alloca (size_t size)
static char * plural_lookup (struct loaded_l10nfile *domain, unsigned long int n, const char *translation, size_t translation_len)
static unsigned long int plural_eval (struct expression *pexp, unsigned long int n)
static const char * category_to_name (int category)
static const char * guess_category_value (int category, const char *categoryname)
char * dcigettext__ (const char *domainname, const char *msgid1, const char *msgid2, int plural, unsigned long int n, int category)
char * _nl_find_msg (struct loaded_l10nfile *domain_file, struct binding *domainbinding, const char *msgid, size_t *lengthp)

Variables

int errno
const char _AAA_nl_default_default_domain__ [] = "messages"
const char * _nl_default_default_domain__ = (const char *)_AAA_nl_default_default_domain__
const char * _nl_current_default_domain__ = (const char *)_AAA_nl_default_default_domain__
const char _AAA_nl_default_dirname__ [] = LOCALEDIR
const char * _nl_default_dirname__ = (const char *)_AAA_nl_default_dirname__
char * LANGUAGE = NULL
struct binding_nl_domain_bindings__
static int enable_secure

Macro Definition Documentation

◆ _GNU_SOURCE

#define _GNU_SOURCE   1

◆ _POSIX_PATH_MAX

#define _POSIX_PATH_MAX   255

◆ ADD_BLOCK

#define ADD_BLOCK ( list,
addr )
Value:
do { \
struct block_list *newp = (struct block_list *) malloc(sizeof(*newp)); \
/* If we cannot get a free block we cannot add the new element to \
the list. */ \
if (newp != NULL) { \
newp->address = (addr); \
newp->next = (list); \
(list) = newp; \
} \
} while (0)
#define NULL
Definition explodename.c:35
void * malloc(YYSIZE_T)
Definition dcigettext.c:227
void * address
Definition dcigettext.c:228
struct block_list * next
Definition dcigettext.c:229

◆ alloca

#define alloca ( size)
Value:
(malloc (size))

◆ DETERMINE_SECURE

#define DETERMINE_SECURE
Value:
if (enable_secure == 0) \
{ \
if (getuid () != geteuid () || getgid () != getegid ()) \
else \
enable_secure = -1; \
}
#define getegid()
Definition dcigettext.c:271
static int enable_secure
Definition dcigettext.c:274
#define geteuid()
Definition dcigettext.c:267
#define getgid()
Definition dcigettext.c:263
#define getuid()
Definition dcigettext.c:259

◆ ENABLE_SECURE

#define ENABLE_SECURE   (enable_secure == 1)

◆ FREE_BLOCKS

#define FREE_BLOCKS ( list)
Value:
do { \
while (list != NULL) { \
struct block_list *old = list; \
list = list->next; \
free (old->address); \
free (old); \
} \
} while (0)

◆ getegid

#define getegid ( )
Value:

◆ geteuid

#define geteuid ( )
Value:

◆ getgid

#define getgid ( )
Value:
0

◆ getuid

#define getuid ( )
Value:
0

◆ IS_ABSOLUTE_PATH

#define IS_ABSOLUTE_PATH ( P)
Value:
dir_sep((P)[0])

◆ IS_PATH_WITH_DIR

#define IS_PATH_WITH_DIR ( P)
Value:
strchr ((const char *)(P), '/')

◆ PATH_INCR

#define PATH_INCR   32

◆ PATH_MAX

#define PATH_MAX   _POSIX_PATH_MAX

Typedef Documentation

◆ transmem_block_t

typedef char transmem_block_t

Function Documentation

◆ _nl_find_msg()

char * _nl_find_msg ( struct loaded_l10nfile * domain_file,
struct binding * domainbinding,
const char * msgid,
size_t * lengthp )

◆ alloca()

void * alloca ( size_t size)

◆ category_to_name()

const char * category_to_name ( int category)
static

◆ dcigettext__()

char * dcigettext__ ( const char * domainname,
const char * msgid1,
const char * msgid2,
int plural,
unsigned long int n,
int category )

◆ guess_category_value()

const char * guess_category_value ( int category,
const char * categoryname )
static

◆ plural_eval()

unsigned long int plural_eval ( struct expression * pexp,
unsigned long int n )
static

◆ plural_lookup()

char * plural_lookup ( struct loaded_l10nfile * domain,
unsigned long int n,
const char * translation,
size_t translation_len )
static

Variable Documentation

◆ _AAA_nl_default_default_domain__

const char _AAA_nl_default_default_domain__[] = "messages"

◆ _AAA_nl_default_dirname__

const char _AAA_nl_default_dirname__[] = LOCALEDIR

◆ _nl_current_default_domain__

const char* _nl_current_default_domain__ = (const char *)_AAA_nl_default_default_domain__

◆ _nl_default_default_domain__

const char* _nl_default_default_domain__ = (const char *)_AAA_nl_default_default_domain__

◆ _nl_default_dirname__

const char* _nl_default_dirname__ = (const char *)_AAA_nl_default_dirname__

◆ _nl_domain_bindings__

struct binding* _nl_domain_bindings__

◆ enable_secure

int enable_secure
static

◆ errno

int errno
extern

◆ LANGUAGE

char* LANGUAGE = NULL