#include <arpa/inet.h>#include <pwd.h>#include <errno.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/time.h>#include <time.h>#include <unistd.h>#include <gcrypt.h>#include <atalk/afp.h>#include <atalk/logger.h>#include <atalk/uam.h>Macros | |
| #define | KEYSIZE 16 |
| #define | PASSWDLEN 64 |
| #define | CRYPTBUFLEN (KEYSIZE*2) |
| #define | CRYPT2BUFLEN (KEYSIZE + PASSWDLEN) |
| #define | dhxhash(a) |
Functions | |
| static int | pwd_login (void *obj, char *username, int ulen, struct passwd **uam_pwd, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| static int | passwd_login (void *obj, struct passwd **uam_pwd, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| static int | passwd_login_ext (void *obj, char *uname, struct passwd **uam_pwd, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| cleartxt login ext | |
| static int | passwd_logincont (void *obj, struct passwd **uam_pwd, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| static int | uam_setup (void *obj, const char *path) |
| static void | uam_cleanup (void) |
Variables | |
| gcry_mpi_t | K |
| static struct passwd * | dhxpwd |
| static uint8_t | randbuf [16] |
| UAM_MODULE_EXPORT struct uam_export | uams_dhx |
| UAM_MODULE_EXPORT struct uam_export | uams_dhx_passwd |
| #define CRYPTBUFLEN (KEYSIZE*2) |
| #define dhxhash | ( | a | ) |
hash a number to a 16-bit quantity
| #define KEYSIZE 16 |
| #define PASSWDLEN 64 |
|
static |
cleartxt login
|
static |
cleartxt login ext
uname format :
|
static |
|
static |
dhx passwd
|
static |
|
static |
|
static |
| gcry_mpi_t K |
the secret key
|
static |
| UAM_MODULE_EXPORT struct uam_export uams_dhx |
| UAM_MODULE_EXPORT struct uam_export uams_dhx_passwd |