OPTSTR(9) BSD Kernel Developer's Manual OPTSTR(9)NAME
optstr_get -- Options string management
SYNOPSIS
#include <sys/optstr.h>
bool
optstr_get(const char *optstr, const char *key, char *buf, size_t bufsize);
DESCRIPTION
An options string is a list of key/value pairs represented in textual form. Each pair is expressed as ''key=value'' and is separated from
other pairs by one or more spaces. For example:
key1=value1 key2=value2 key3=value3
Options strings are used to pass information between userland programs and the kernel in a binary-agnostic way. This makes them endianness
and ABI independent.
FUNCTIONS
The following functions are provided to manage options strings:
optstr_get(optstr, key, buf, bufsize)
Scans the optstr options string looking for the key key and stores its value in the buffer pointed to by buf copying a maximum of
bufsize bytes. Returns 'true' if the key was found or 'false' otherwise, in which case buf is left unmodified.
CODE REFERENCES
The options string management functions are implemented within the files sys/kern/subr_optstr.c and sys/sys/optstr.h.
HISTORY
Options strings appeared in NetBSD 4.0.
BSD August 11, 2007 BSD
Check Out this Related Man Page
OPENPAM_SUBST(3) BSD Library Functions Manual OPENPAM_SUBST(3)NAME
openpam_subst -- substitute PAM item values in a string
LIBRARY
Pluggable Authentication Module Library (libpam, -lpam)
SYNOPSIS
#include <sys/types.h>
#include <security/pam_appl.h>
#include <security/openpam.h>
int
openpam_subst(const pam_handle_t *pamh, char *buf, size_t *bufsize, const char *template);
DESCRIPTION
The openpam_subst() function expands a string, substituting PAM item values for all occurrences of specific substitution codes. The template
argument points to the initial string. The result is stored in the buffer pointed to by the buf argument; the bufsize argument specifies the
size of that buffer. The actual size of the resulting string, including the terminating NUL character, is stored in the location pointed to
by the bufsize argument.
If buf is NULL, or if the buffer is too small to hold the expanded string, bufsize is updated to reflect the amount of space required to hold
the entire string, and openpam_subst() returns PAM_TRY_AGAIN.
If openpam_subst() fails for any other reason, the bufsize argument is untouched, but part of the buffer may still have been overwritten.
Substitution codes are introduced by a percent character and correspond to PAM items:
%H Replaced by the current value of the PAM_RHOST item.
%h Replaced by the current value of the PAM_HOST item.
%s Replaced by the current value of the PAM_SERVICE item.
%t Replaced by the current value of the PAM_TTY item.
%U Replaced by the current value of the PAM_RUSER item.
%u Replaced by the current value of the PAM_USER item.
RETURN VALUES
The openpam_subst() function returns one of the following values:
[PAM_SYSTEM_ERR] System error.
[PAM_TRY_AGAIN] Try again.
SEE ALSO pam(3), pam_get_authtok(3), pam_get_item(3), pam_get_user(3), pam_strerror(3)STANDARDS
The openpam_subst() function is an OpenPAM extension.
AUTHORS
The openpam_subst() function and this manual page were developed by Dag-Erling Smorgrav <des@des.no>.
BSD September 12, 2014 BSD
Introduction
I have seen some misinformation regarding Unix file permissions. I will try to set the record straight. Take a look at this example of some output from ls:
$ ls -ld /usr/bin /usr/bin/cat
drwxrwxr-x 3 root bin 8704 Sep 23 2004 /usr/bin
-r-xr-xr-x 1 bin bin ... (6 Replies)
I have a file which looks roughly like this:
996 mmmmmmm
996 xxxxxxxxxxxxx
99600 ssssssssss
9964 fffffffffffff
and would like to sort it numerically on the first field. I tried:
sort -nr --key=1 ....
The output I get is:
99600 ssssssssss
9964 ... (3 Replies)
Suppose I have a main() function with only one malloc statement allocating say some 1 gb memory. Also say my system has 1 gb of ram.
main()
{
malloc(1gb)
return(0)
}
The program above exits without freeing the memory.
In this case will the 1 gb of heap memory be returned... (9 Replies)
I'm trying to install a PGX32 video card on my Sparc 10 Ultra running Solaris 10.
I've got the Oracle installation guide for it and I got as far as:
"4. Insert the CD-ROM labeled “GFX OpenWindows for Solaris 2” into the drive."
I don't have a CD-ROM by that name and a web search for that... (21 Replies)
Hey All,
Quick question...
I'm writing a short script to check if a continuous port is running on a server.
I'm using "ps -ef | grep -v grep | grep processName" and I was wondering if it was better/more reliable to just check the
return code from the command or if its better to pipe to... (12 Replies)
I installed NetBSD 6.1.2 amd64 and can't find the apm utility. Is it not in the base system?
Is it necessary to recompile the default amd64 kernel to use apm?
Or is there a new method for power management and suspend/resume? (2 Replies)
Hi,
I am learning shell scripting for the first time. I use AT&T Korn Shell, Version AJM 93u+ 2012-08-01, compiled from source on NetBSD.
So far I have managed to set up what I think is a useful and pleasing shell prompt, which can be seen in the image attached to this post.
The prompt is... (2 Replies)
Hey gang, I have a list of times I need to sum up. This list can vary from a few to a few thousand entries. Now I had found a closed reference to adding time titled "add up time with xx:yy format in bash how?" In it, the example works great for that formatted list of times... This is the reply code... (5 Replies)
Usually when I on the evening go to bed I take some interesting book with me. I read it for a while to get me down to sleep. Probably most people seek information from the Nett by googleing but I am so oldfashioned I prefer a real book ;)
But what a book. The one I found and ordered is BSD Unix®... (0 Replies)
On the late 1960s I got short hands on experience with a russian "small" computer. It vas a copy of DEC's VAX ... and running some version of BSD-Unix. After that I worked in a university following the development of computing. After retire I started collecting old pc's and installing... (13 Replies)