HP-UX Reference (11i v1 00/12) - 3 Library Functions N-Z (vol 7)
__________________________________________________________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________
STANDARD Printed by: Nora Chuang [nchuang] STANDARD
/build/1111/BRICK/man3/nan.3m
________________________________________________________________
___ ___
n
nis_objects(3N) nis_objects(3N)
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.
The TA_SEARCHABLE flag specifies that values in this column can be searched. Searchable columns must
contain textual data and must have a name associated with them. The flag TA_CASE specifies that
searches involving this column ignore the case of the value in the column. At least one of the columns in
the table should be searchable. Also, the combination of all searchable column values should uniquely
select an entry within the table.
HP-UX Release 11i: December 2000 − 5 − Section 3−−565
___
___