August 11, 2007 OPTSTR 9

### NAME

optstr_get - Options string management

### SYNOPSIS

```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 NetBSD4.0.