netatalk: uam_auth.h File Reference

netatalk 4.5.0
Free and Open Source Apple Filing Protocol (AFP) Server
Loading...
Searching...
No Matches
uam_auth.h File Reference
`#include <pwd.h>`
`#include <atalk/globals.h>`
`#include <atalk/uam.h>`

Go to the source code of this file.

## Data Structures
struct | uam_mod
struct | uam_obj

## Macros
#define | uam_attach(a, b)
#define | uam_detach(a)
#define | auth_unregister(a)

## Functions
struct uam_mod * | uam_load (AFPObj *, const char *, const char *)
void | uam_unload (struct uam_mod *)
int | auth_load (AFPObj *, const char *, const char *)
int | auth_register (const int, struct uam_obj *)
struct uam_obj * | auth_uamfind (const int, const char *, const int)
void | auth_unload (void)
int | uam_random_string (AFPObj *, char *, int)
| Fill a buffer with cryptographically secure random bytes.

## Detailed Description

interface between uam.c and auth.c

## Macro Definition Documentation

## ◆ auth_unregister

#define auth_unregister | ( |  | a | ) |

Value:
uam_detach(a)
uam_detach
#define uam_detach(a)
Definition afpd/uam_auth.h:52

## ◆ uam_attach

#define uam_attach | ( |  | a,
|  |  | b )

Value:
do { \
(a)->uam_prev->uam_next = (b); \
(b)->uam_prev = (a)->uam_prev; \
(b)->uam_next = (a); \
(a)->uam_prev = (b); \
} while (0)

## ◆ uam_detach

#define uam_detach | ( |  | a | ) |

Value:
do { \
(a)->uam_prev->uam_next = (a)->uam_next; \
(a)->uam_next->uam_prev = (a)->uam_prev; \
} while (0)

## Function Documentation

## ◆ auth_load()

int auth_load | ( | AFPObj * | obj,
|  | const char * | path,
|  | const char * | list )

load all of the modules

## ◆ auth_register()

int auth_register | ( | const int | type,
|  | struct uam_obj * | uam )

## ◆ auth_uamfind()

struct uam_obj * auth_uamfind | ( | const int | type,
|  | const char * | name,
|  | const int | len )

## ◆ auth_unload()

void auth_unload | ( | void |  | ) |

get rid of all of the uams

## ◆ uam_load()

struct uam_mod * uam_load | ( | AFPObj * | obj,
|  | const char * | path,
|  | const char * | name )
| extern

## ◆ uam_random_string()

int uam_random_string | ( | AFPObj * | obj,
|  | char * | buf,
|  | int | len )

Fill a buffer with cryptographically secure random bytes.

Reads from /dev/urandom, looping until all bytes are filled so the caller always receives a fully-populated nonce. Retries on EINTR; never falls back to a deterministic source.

Parameters

  obj | AFP session object (unused)
  buf | destination buffer
  len | number of bytes to fill; must be a positive multiple of 4

Returns
  0 on success, -1 on error

## ◆ uam_unload()

void uam_unload | ( | struct uam_mod * | mod | ) |
| extern