HP-UX Reference (11i v2 04/09) - 3 Library Functions N-Z (vol 7)

n
nis_objects(3N) nis_objects(3N)
nis_name *gr_members_val;
} gr_members;
}
The gr_flags member contains flags that are currently unused. The gr_members structure contains
the list of principals. For a complete description of how group objects are manipulated see
nis_groups(3N).
Table Objects
The NIS+ table object is analogous to a YP map. The differences stem from the access controls, and the
variable schemas that NIS+ allows. The table objects data structure is defined as follows:
#define TA_BINARY 1
#define TA_CRYPT 2
#define TA_XDR 4
#define TA_SEARCHABLE 8
#define TA_CASE 16
struct table_col {
char *tc_name;
u_long tc_flags;
u_long tc_rights;
}
typedef struct table_col table_col;
struct table_obj {
char *ta_type;
u_int ta_maxcol;
u_char ta_sep;
struct {
u_int ta_cols_len;
table_col *ta_cols_val;
} ta_cols;
char *ta_path;
}
The ta_type member contains a string that identifies the type of entries in this table. NIS+ does not
enforce any policies as to the contents of this string. However, when entries are added to the table, the
NIS+ service will check to see that they have the same ‘‘type’’ as the table specified by this member.
The structure ta_cols contains two members. ta_cols_val is an array of table_col structures.
The length of the array depends on the number of columns in the table; it is defined when the table is
created and is stored in ta_cols_len . ta_maxcol also contains the number of columns in the table
and always has the same value as ta_cols_len . Once the table is created, this length field cannot be
changed.
The ta_sep character is used by client applications that wish to print out an entry from the table. Typi-
cally this is either space (‘‘ ’’) or colon (‘‘:’’).
The ta_path string defines a concatenation path for tables. This string contains an ordered list of fully
qualified table names, separated by colons, that are to be searched if a search on this table fails to match
any entries. This path is only used with the flag
FOLLOW_PATH with a nis_list() call. See
nis_tables (3N) for information on these flags.
In addition to checking the type, the service will check that the number of columns in an entry is the
same as those in the table before allowing that entry to be added.
Each column has associated with it a name in tc_name, a set of flags in tc_flags, and a set of access
rights in tc_rights. The name should be indicative of the contents of that column.
The
TA_BINARY flag indicates that data in the column is binary (rather than text). Columns that are
searchable cannot contain binary data. The TA_CRYPT flag specifies that the information in this column
should be encrypted prior to sending it over the network. This flag has no effect in the export version of
NIS+. The TA_XDR flag is used to tell the client application that the data in this column is encoded using
the XDR protocol. The TA_BINARY flag must be specified with the XDR flag. Further, by convention, the
name of a column that has the TA_XDR flag set is the name of the XDR function that will decode the data
in that column.
Section 3672 Hewlett-Packard Company 5 HP-UX 11i Version 2: September 2004