Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
MUNGE_ENUM(3)		   MUNGE Uid 'N' Gid Emporium		   MUNGE_ENUM(3)

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 `pkg-config --cflags --libs munge` -o foo foo.c

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 null-terminated case-in-
     sensitive string str into the corresponding MUNGE enumeration of the speci-
     fied 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 null-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>
     #include <stdlib.h>
     #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 (EXIT_SUCCESS);
     }

AUTHOR
     Chris Dunlap <cdunlap@llnl.gov>

COPYRIGHT
     Copyright (C) 2007-2025 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 Li-
     cense, or (at your option) any later version.

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

     https://github.com/dun/munge

munge-0.5.18			   2026-02-10			   MUNGE_ENUM(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=munge_enum_is_valid&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help