PreviousNext

sec_rgy_acct_user_replace(3sec)

Replaces user account data

Synopsis

#include <dce/acct.h>

void sec_rgy_acct_user_replace(
sec_rgy_handle_t context,
sec_rgy_login_name_t *login_name,
sec_rgy_acct_user_t *user_part,
boolean32 set_passwd,
sec_passwd_rec_t *caller_key,
sec_passwd_rec_t *new_key,
sec_passwd_type_t new_keytype,
sec_passwd_version_t *new_key_version,
error_status_t *status);

Parameters

Input

context
An opaque handle bound to a registry server. Use sec_rgy_site_open( ) to acquire a bound handle.

login_name
A pointer to the account login name. A login name is composed of three character strings, containing the principal, group, and organization (PGO) names corresponding to the account. For the group and organization names, blank strings can serve as wildcards, matching any entry. The principal name must be input.

user_part
A pointer to the sec_rgy_acct_user_t structure containing the user part of the account data. This information can be modified only by the account owner or other authorized user. The structure contains the following fields:

gecos
A character string containing information about the account owner. This often includes such information as their name and telephone number.

homedir
The default directory upon login for the account.

shell
The default shell to use upon login.

passwd_version_number
The password version number, a 32-bit unsigned integer, set by the registry server.

passwd_dtm
The date and time of the last password change (in sec_timeval_sec_t form), also set by the registry server.

flags
A flag set of type sec_rgy_acct_user_flags_t.

passwd
The account's encrypted password.

The only user data fields that can be changed are: gecos, homedir, shell, flags, and passwd.

set_passwd
The password reset flag. If you set this parameter to TRUE, the user's password will be changed to the value specified in new_key.

caller_key
A key to use to encrypt the key for transmission to the registry server. If communications secure to the rpc_c_authn_level_pkt_privacy level are available on a system, then this parameter is not necessary, and the packet encryption is sufficient to ensure security.

new_key
The password for the new account. During transmission to the registry server, it is encrypted with caller_key.

new_keytype
The type of the new key. The server uses this parameter to decide how to encode the plaintext key.

Output

new_key_version
The key version number returned by the server. If the client requests a particular key version number (via the version_number field of the new_key input parameter), the server returns the requested version number back to the client.

status
A pointer to the completion status. On successful completion, the routine returns error_status_ok. Otherwise, it returns an error.

Description
The sec_rgy_acct_user_replace( ) routine replaces the user information in the account record specified by the input login name. The user information consists of information such as the account home directory and default shell. The user information can be modified only by the account owner or other authorized users (users with user_info (u) privileges for an account).

Use the set_passwd parameter to reset the user's password. If you set this parameter to TRUE, the user's password is changed to the value specified in new_key.

Permissions Required
The sec_rgy_acct_user_replace( ) routine requires the u (user_info) permission on the account principal.

Notes
All users need the w (write) privilege to modify any account information.

Files

/usr/include/dce/acct.idl
The idl file from which dce/acct.h was derived.

Errors

The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.

sec_rgy_not_authorized
The client program is not authorized to modify the account data.

sec_rgy_object_not_found
The specified account could not be found.

sec_rgy_server_unavailable
The DCE registry server is unavailable.

error_status_ok
The call was successful.

Related Information
Functions:

sec_intro(3sec)

sec_rgy_acct_add(3sec)

sec_rgy_acct_admin_replace(3sec)

sec_rgy_acct_rename(3sec)

sec_rgy_acct_replace_all(3sec)