Poster of Linux kernelThe best gift for a Linux geek
MUNGE_ENUM

MUNGE_ENUM

Section: MUNGE Uid 'N' Gid Emporium (3) Updated: 2010-03-23
Local index Up

 

NAME

munge_enum_is_valid, munge_enum_int_to_str, munge_enum_str_to_int - MUNGE enumeration functions

 

SYNOPSIS

#include <munge.h>

int munge_enum_is_valid (munge_enum_t type, int val);

const char * munge_enum_int_to_str (munge_enum_t type, int val);

int munge_enum_str_to_int (munge_enum_t type, const char *str);

cc ... -lmunge

 

DESCRIPTION

The munge_enum_is_valid() function checks if the given value val is a valid MUNGE enumeration of the specified type type in the software configuration as currently compiled. Some enumerations correspond to options that can only be enabled at compile-time.

The munge_enum_int_to_str() function converts the MUNGE enumeration val of the specified type type into a text string.

The munge_enum_str_to_int() function converts the NUL-terminated case-insensitive string str into the corresponding MUNGE enumeration of the specified type type.

 

RETURN VALUE

The munge_enum_is_valid() function returns non-zero if the given value val is a valid enumeration.

The munge_enum_int_to_str() function returns a NUL-terminated constant text string, or NULL on error; this string should not be freed or modified by the caller.

The munge_enum_str_to_int() function returns a MUNGE enumeration on success (i.e., >= 0), or -1 on error.

 

ENUM TYPES

The following enumeration types can be specified.
MUNGE_ENUM_CIPHER
Specify enumerations for the available cipher types.
MUNGE_ENUM_MAC
Specify enumerations for the available MAC types.
MUNGE_ENUM_ZIP
Specify enumerations for the available compression types.

 

ERRORS

Refer to munge(3) for a complete list of errors.

 

EXAMPLE

The following example program illustrates how a list of available cipher types can be queried.

#include <stdio.h>                      /* for printf() */
#include <stdlib.h>                     /* for exit() */
#include <munge.h>

int
main (int argc, char *argv[])
{
    int           i;
    const char   *p;
    munge_enum_t  t = MUNGE_ENUM_CIPHER;

    for (i = 0; (p = munge_enum_int_to_str (t, i)) != NULL; i++) {
        if (munge_enum_is_valid (t, i)) {
            printf ("%2d = %s\n", i, p);
        }
    }
    exit (0);
}

 

AUTHOR

Chris Dunlap <cdunlap@llnl.gov>

 

COPYRIGHT

Copyright (C) 2007-2010 Lawrence Livermore National Security, LLC.
Copyright (C) 2002-2007 The Regents of the University of California.

MUNGE is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Additionally for the MUNGE library (libmunge), you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

 

SEE ALSO

munge(1), remunge(1), unmunge(1), munge(3), munge_ctx(3), munge(7), munged(8).

http://home.gna.org/munge/


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
ENUM TYPES
ERRORS
EXAMPLE
AUTHOR
COPYRIGHT
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 21:50:48 GMT, April 16, 2011