*** UNIX MANUAL PAGE BROWSER ***

A Nergahak database for man pages research.

Navigation

Directory Browser

1Browse 4.4BSD4.4BSD
1Browse Digital UNIXDigital UNIX 4.0e
1Browse FreeBSDFreeBSD 14.3
1Browse MINIXMINIX 3.4.0rc6-d5e4fc0
1Browse NetBSDNetBSD 10.1
1Browse OpenBSDOpenBSD 7.7
1Browse UNIX v7Version 7 UNIX
1Browse UNIX v10Version 10 UNIX

Manual Page Search

Manual Page Result

0 Command: sia_collect_trm | Section: 3 | Source: Digital UNIX | File: sia_collect_trm.3.gz
sia_collect_trm(3) Library Functions Manual sia_collect_trm(3) NAME sia_collect_trm - Parameter collection routine for SIA (Security Inte- gration Architecture) LIBRARY Standard C library (libc.so and libc.a) SYNOPSIS #include <sia.h> #include <siad.h> int sia_collect_trm( int timeout, int rendition, unsigned char *title, int num_prompts, prompt_t *prompts); PARAMETERS timeout The timeout parameter is the number of seconds that the sia_collect_trm() routine waits. rendition The rendition parameter is used to determine the style of the presentation and is set to one of the following values: SIAMENUONE Select one of the choices given. SIAMENUANY Select any of the choices given. SIAFORM Fill out the form. SIAONELINER One question with one answer. SIAINFO Information only. SIAWARNING ERROR or WARNING message. title Pointer to a title string. A null pointer indicates no ti- tle. num_prompts The number of prompts in this collection. prompts A pointer to a prompt_t prompts structure. DESCRIPTION The sia_collect_trm() routine provides parameter collection capability. The SIA session interfaces and change secure information interfaces use a pre-defined parameter collection capability. The calling application passes the address to a parameter collection routine through the SIA middle layer to the siad_* routines. This collection routine allows different security mechanisms to prompt the user for different parame- ters without having to be aware of the user interface details. EXAMPLES The following examples are coded to work with any collection routine callback, not just sia_collect_trm(); as such are not full standalone modules. The following example shows how the sia_collect_trm() routine can be used to prompt for username and password (such as in login and xdm): extern int (*collect)(); /* current SIA collection callback */ prompt_t prompts[8]; /* space for prompts */ char name[16], password[80]; /* where to store the data */ /* set up prompts for username & password, latter not echoed */ prompts[0].prompt = (unsigned char *) "login: "; prompts[0].result = (unsigned char *) name; prompts[0].min_result_length = 1; prompts[0].max_result_length = 8; prompts[0].control_flags = 0; prompts[1].prompt= (unsigned char *) "Password:"; prompts[1].result = (unsigned char *) password; prompts[1].min_result_length = 0; prompts[1].max_result_length = MAX_PWD_LENGTH; prompts[1].control_flags = SIARESINVIS; if((*collect)(0, SIAFORM, NULL, 2, &prompts) != SIACOL- SUCCESS) return(SIADFAIL | SIADSTOP); /* could not collect name and password */ The following example shows how the sia_collect_trm() routine can choose from a menu: extern int (*collect)(); /* current SIA collection callback */ int i; /* indexing */ int collecter- ror; /* status */ prompt_t prompts[3]; /* prompt con- trol area */ memset(prompts, 0, sizeof prompts); prompts[0].prompt = (unsigned char *) "a"; prompts[1].prompt = (unsigned char *) "b"; prompts[2].prompt = (unsigned char *) "c"; collecterror = (*collect)(SIAONEMIN, SIAMENUONE, "Pick one of the following:\n", 3, prompts); if (collecterror != SIACOLSUCCESS) { (void) fputs("Collection failed.\n", stderr); return -1; } for (i = 0; i < 3; i++) { if (prompts[i].re- sult) { (void) printf("You picked %s.\n", prompts[i].prompt); return 0; } } (void) fputs("Collection return error.\n", stderr); return -1; The following example shows how the sia_collect_trm() routine can put out an information message: extern int (*collect)(); /* current SIA collection callback */ prompt_t prompts[1]; /* space for the output text control */ prompts[0].prompt = (unsigned char *) "Example text"; (void)(*col- lect)(0, SIAINFO, "", 1, prompts); return 0; RETURN VALUES The sia_collect_trm() routine returns either SIASUCCESS or SIAFAIL. ERRORS The errno value is not (normally) set explicitly by sia_* routines. The errno values are those returned from the dynamic loader interface, from dependent (siad_*) routines, or from malloc. Possible errors in- clude resource constraints (no memory) and various authentication fail- ures. FILES /etc/passwd RELATED INFORMATION sia_ses_init(3), sia_chg_finger(3), matrix.conf(4) Security delim off sia_collect_trm(3)

Navigation Options