ptr_valid: hkl Reference Manual

## ptr_valid ptr_valid |

## Functions

#define | ptr_valid_read()
#define | ptr_valid_write()
bool | ptr_valid_string ()
bool | ptr_valid ()
bool | ptr_valid_batch_start ()
#define | ptr_valid_batch_read()
#define | ptr_valid_batch_write()
bool | ptr_valid_batch_string ()
void | ptr_valid_batch_end ()
#define | PTR_VALID_ALIGNOF()

## Types and Values

struct | ptr_valid_batch
struct | ptr_valid_map

## Description

## Functions

### ptr_valid_read()

    #define             ptr_valid_read(p)

### ptr_valid_write()

    #define             ptr_valid_write(p)

### ptr_valid_string ()

    bool
    ptr_valid_string (const char *p);

### ptr_valid ()

    bool
    ptr_valid (const void *p,
               size_t align,
               size_t size,
               bool write);

### ptr_valid_batch_start ()

    bool
    ptr_valid_batch_start (struct ptr_valid_batch *batch);

### ptr_valid_batch_read()

    #define             ptr_valid_batch_read(batch, p)

### ptr_valid_batch_write()

    #define             ptr_valid_batch_write(batch, p)

### ptr_valid_batch_string ()

    bool
    ptr_valid_batch_string (struct ptr_valid_batch *batch,
                            const char *p);

### ptr_valid_batch_end ()

    void
    ptr_valid_batch_end (struct ptr_valid_batch *batch);

### PTR_VALID_ALIGNOF()

    #define PTR_VALID_ALIGNOF(var) __alignof__(var)

## Types and Values

### struct ptr_valid_batch

    struct ptr_valid_batch {
    	unsigned int num_maps;
    	struct ptr_valid_map *maps;
    	int child_pid;
    	int to_child, from_child;
    	void *last;
    	bool last_ok;
    };

### struct ptr_valid_map

    struct ptr_valid_map {
    	const char *start, *end;
    	bool is_write;
    };