libSPF v1.0: macro.h File Reference

Main Page | Data Structures | File List | Data Fields | Globals | Search for

# macro.h File Reference

`#include <stdio.h>`
`#include <stdlib.h>`
`#include <string.h>`
`#include <ctype.h>`
`#include "../../config.h"`
`#include "spf.h"`

Include dependency graph for macro.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Defines
#define | _MACRO_H 1
## Functions
__BEGIN_DECLS char * | MACRO_expand (peer_info_t *peer_info, const char *s)
char * | MACRO_process (peer_info_t *peer_info, char *macro, const size_t size)
char * | MACRO_eatmore (char *macro, char *s)
SPF_BOOL | MACRO_addbuf (strbuf_t *master, char *s, const size_t size)

## Define Documentation

#define _MACRO_H 1

| Definition at line 47 of file macro.h.

## Function Documentation

SPF_BOOL MACRO_addbuf | ( | strbuf_t * | master,
|  | char * | s,
|  | const size_t | size
| ) |

| Definition at line 638 of file macro.c. References strbuf_s::elements, strbuf_s::head, strbuf_node_s::len, strbuf_node_s::next, strbuf_node_s::s, SIZEOF, SPF_BOOL, SPF_FALSE, SPF_TRUE, strbuf_node_t, strbuf_t, xepprintf, xmalloc, and xvprintf. Referenced by MACRO_expand().

char* MACRO_eatmore | ( | char * | macro,
|  | char * | s
| ) |

| Definition at line 505 of file macro.c. References SPF_MAX_MACRO, SPF_TRUE, UTIL_count_delim(), UTIL_is_spf_delim(), UTIL_reverse(), UTIL_split_strr(), xepprintf, xfree, xmalloc, xprintf, xstrndup, and xvprintf. Referenced by MACRO_process(). Here is the call graph for this function:

__BEGIN_DECLS char* MACRO_expand | ( | peer_info_t * | peer_info,
|  | const char * | s
| ) |

| Definition at line 71 of file macro.c. References strbuf_s::elements, strbuf_s::head, strbuf_node_s::len, MACRO_addbuf(), MACRO_process(), peer_info_t, strbuf_node_s::s, SIZEOF, SPF_FALSE, strbuf_node_t, strbuf_t, UTIL_index(), xepprintf, xfree, xmalloc, xprintf, xstrndup, and xvprintf. Referenced by SPF_get_explain(), and SPF_parse_policy(). Here is the call graph for this function:

char* MACRO_process | ( | peer_info_t * | peer_info,
|  | char * | macro,
|  | const size_t | size
| ) |

| Definition at line 301 of file macro.c. References peer_info_s::cur_eaddr, peer_info_s::current_domain, DNS_check_client_reverse(), peer_info_s::ehlo, peer_info_s::helo, peer_info_s::ip_ver, peer_info_s::local_part, MACRO_eatmore(), peer_info_s::mta_hname, peer_info_t, peer_info_s::r_ip, peer_info_s::r_vhname, SPF_FALSE, SPF_MAX_ENV_HELO, SPF_MAX_HNAME, SPF_MAX_IP_ADDR, SPF_MAX_LOCAL_PART, SPF_MAX_STR, SPF_MAX_UTC_TIME, peer_info_s::utc_time, xepprintf, xfree, xmalloc, xprintf, xstrndup, and xvprintf. Referenced by MACRO_expand(). Here is the call graph for this function: