File:  [ELWIX - Embedded LightWeight unIX -] / libaitcfg / example / test_pwd.c
Revision 1.2.4.1: download - view: text, annotated - select for diffs - revision graph
Thu Jan 17 13:46:59 2013 UTC (11 years, 3 months ago) by misho
Branches: cfg7_0
Diff to: branchpoint 1.2: preferred, unified
fix examples

    1: #include <stdio.h>
    2: #include <stdlib.h>
    3: #include <string.h>
    4: #include <time.h>
    5: #include <aitcfg.h>
    6: #include <aitpwd.h>
    7: 
    8: 
    9: int main()
   10: {
   11: 	pwd_root_t ddd, db;
   12: 	const struct tagUser *u;
   13: 	char str[256];
   14: 	int ret = 0;
   15: 
   16: 	if (cfgLoadPasswd("test.pwd", &db)) {
   17: 		printf("Error #%d - %s\n", cfg_GetErrno(), cfg_GetError());
   18: 		return 1;
   19: 	}
   20: 
   21: 	/* unit test find */
   22: 	u = cfg_findPasswdBy(&db, PWD_CRIT_UID, 0);
   23: 	printf("cfg_findPasswdBy %p UID 0 User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   24: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   25: 	u = cfg_findPasswdBy(&db, PWD_CRIT_UID, 444);
   26: 	printf("cfg_findPasswdBy %p UID 444 User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   27: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   28: 	u = cfg_findPasswdBy(&db, PWD_CRIT_UID, 99999);
   29: 	printf("cfg_findPasswdBy %p UID 99999\n", u);
   30: 
   31: 	u = cfg_findPasswdBy(&db, PWD_CRIT_GID, 0);
   32: 	printf("cfg_findPasswdBy %p GID 0 User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   33: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   34: 	u = cfg_findPasswdBy(&db, PWD_CRIT_GID, 20);
   35: 	printf("cfg_findPasswdBy %p GID 20 User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   36: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   37: 	u = cfg_findPasswdBy(&db, PWD_CRIT_GID, 99999);
   38: 	printf("cfg_findPasswdBy %p GID 99999\n", u);
   39: 
   40: 	u = cfg_findPasswdBy(&db, PWD_CRIT_NAME, "user_l");
   41: 	printf("cfg_findPasswdBy %p NAME user_l User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   42: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   43: 	u = cfg_findPasswdBy(&db, PWD_CRIT_NAME, "aa");
   44: 	printf("cfg_findPasswdBy %p NAME aa User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   45: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   46: 	u = cfg_findPasswdBy(&db, PWD_CRIT_NAME, NULL);
   47: 	printf("cfg_findPasswdBy %p NAME NULL\n", u);
   48: 	u = cfg_findPasswdBy(&db, PWD_CRIT_NAME, "");
   49: 	printf("cfg_findPasswdBy %p NAME \"\"\n", u);
   50: 
   51: 	/* get */
   52: 	u = cfg_getPasswd(&db, PWD_CRIT_UID, 0);
   53: 	printf("cfg_getPasswd %p UID 0 User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   54: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   55: 	u = cfg_getPasswd(&db, PWD_CRIT_UID, 444);
   56: 	printf("cfg_getPasswd %p UID 444 User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   57: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   58: 	u = cfg_getPasswd(&db, PWD_CRIT_UID, 99999);
   59: 	printf("cfg_getPasswd %p UID 99999\n", u);
   60: 
   61: 	u = cfg_getPasswd(&db, PWD_CRIT_NAME, "user_l");
   62: 	printf("cfg_getPasswd %p NAME user_l User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   63: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   64: 	u = cfg_getPasswd(&db, PWD_CRIT_NAME, "aa");
   65: 	printf("cfg_getPasswd %p NAME aa User=%s %u:%u\n", u, AIT_GET_STR(&u->usr_name), 
   66: 			AIT_GET_U32(&u->usr_uid), AIT_GET_U32(&u->usr_gid));
   67: 	u = cfg_getPasswd(&db, PWD_CRIT_NAME, NULL);
   68: 	printf("cfg_getPasswd %p NAME NULL\n", u);
   69: 	u = cfg_getPasswd(&db, PWD_CRIT_NAME, "");
   70: 	printf("cfg_getPasswd %p NAME \"\"\n", u);
   71: 
   72: 	printf("\n----------\n");
   73: 
   74: 	/* unit test set */
   75: 	printf("cfg_setPasswd %d\n", cfg_setPasswd(&db, 4, "use", "alabala", 101, 4, 
   76: 				NULL, 0, 0, NULL, NULL, NULL));
   77: 	printf("cfg_setPasswd %d\n", cfg_setPasswd(&db, 3, "use", "alabala", 101, 3, 
   78: 				NULL, 0, 0, NULL, NULL, NULL));
   79: 	printf("cfg_setPasswd %d\n", cfg_setPasswd(&db, 3, "user_l", "pliok", 999, 3, 
   80: 				NULL, 0, 0, NULL, NULL, NULL));
   81: 	printf("cfg_setPasswd %d\n", cfg_setPasswd(&db, 2, "use1", "WC_00", 0, 0, 
   82: 				NULL, 0, 0, NULL, NULL, NULL));
   83: 	printf("cfg_setPasswd %d\n", cfg_setPasswd(&db, 0, "USE1", "WC_00", 10000, 20, 
   84: 				NULL, 0, 0, "TEST for use", "/home/USE1", "/bin/sh"));
   85: 	printf("cfg_setPasswd %d\n", cfg_setPasswd(&db, 0, "USE2", "WC_!!", 10001, 20, 
   86: 				NULL, 0, 0, "TEST for use", "/home/USE2", NULL));
   87: 
   88: 	printf("\n----------\n");
   89: 
   90: 	/* unit test unset */
   91: 	u = cfg_getPasswd(&db, PWD_CRIT_NAME, "ttt");
   92: 	printf("-> user=%s %u:%u \"%s\"\n", AIT_GET_STR(&u->usr_name), 
   93: 			(u_int) AIT_RAW(&u->usr_uid), (u_int) AIT_RAW(&u->usr_gid), 
   94: 			AIT_GET_LIKE(&u->usr_realm, char*));
   95: 	printf("unset %d\n", cfg_unsetPasswd(&db, PWD_CRIT_NAME, "ttt"));
   96: 	printf("unset %d\n", cfg_unsetPasswd(&db, PWD_CRIT_NAME, "tttZZZ"));
   97: 	printf("unset %d\n", cfg_unsetPasswd(&db, PWD_CRIT_NAME, "ttt"));
   98: 
   99: 	printf("\n----------\n");
  100: 
  101: 	cfgWritePasswd(stdout, &db);
  102: 
  103: 	printf("\n----------\n");
  104: 
  105: 	if (!(u = cfgAuthPasswd(&db, "user_l", "000")))
  106: 		printf("Access denied! user_l\n");
  107: 	else
  108: 		printf("Access granted - user found %p %s uid=%u:%u\n", u, AIT_GET_STR(&u->usr_name), 
  109: 				(u_int) AIT_RAW(&u->usr_uid), (u_int) AIT_RAW(&u->usr_gid));
  110: 	if (!(u = cfgAuthPasswd(&db, "BRYMMMM", "111222")))
  111: 		printf("Access denied! BRYMMMM\n");
  112: 	else
  113: 		printf("Access granted - user found %p %s uid=%u:%u\n", u, AIT_GET_STR(&u->usr_name), 
  114: 				(u_int) AIT_RAW(&u->usr_uid), (u_int) AIT_RAW(&u->usr_gid));
  115: 	if (!(u = cfgAuthPasswd(&db, "aa", "bb")))
  116: 		printf("Access denied! aa\n");
  117: 	else
  118: 		printf("Access granted - user found %p %s uid=%u:%u\n", u, AIT_GET_STR(&u->usr_name), 
  119: 				(u_int) AIT_RAW(&u->usr_uid), (u_int) AIT_RAW(&u->usr_gid));
  120: 
  121: 	if (cfgCreatePasswd("test4e.pwd", &db)) {
  122: 		printf("Error #%d - %s\n", cfg_GetErrno(), cfg_GetError());
  123: 		return 2;
  124: 	}
  125: 
  126: 	cfgUnloadPasswd(&db);
  127: 	return 0;
  128: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>