Skip to content

Commit

Permalink
Accept new passwords as const char pointers
Browse files Browse the repository at this point in the history
In krb5_change_password(), krb5_set_password(), and
krb5_set_password_using_ccache(), accept the new password as a const
char * instead of a char *.  Propagate this change to the necessary
internal functions.

[ghudson@mit.edu: commit message rewrite]

(cherry picked from commit 03c5058)

ticket: 8269
version_fixed: 1.14
status: resolved
  • Loading branch information
cryptomilk authored and tlyu committed Oct 26, 2015
1 parent 7861885 commit fca6f10
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 14 deletions.
11 changes: 6 additions & 5 deletions src/include/krb5/krb5.hin
Original file line number Diff line number Diff line change
Expand Up @@ -5037,9 +5037,9 @@ krb5_sname_match(krb5_context context, krb5_const_principal matching,
* @retval 0 Success; otherwise - Kerberos error codes
*/
krb5_error_code KRB5_CALLCONV
krb5_change_password(krb5_context context, krb5_creds *creds, char *newpw,
int *result_code, krb5_data *result_code_string,
krb5_data *result_string);
krb5_change_password(krb5_context context, krb5_creds *creds,
const char *newpw, int *result_code,
krb5_data *result_code_string, krb5_data *result_string);

/**
* Set a password for a principal using specified credentials.
Expand Down Expand Up @@ -5072,7 +5072,7 @@ krb5_change_password(krb5_context context, krb5_creds *creds, char *newpw,
* Kerberos error codes.
*/
krb5_error_code KRB5_CALLCONV
krb5_set_password(krb5_context context, krb5_creds *creds, char *newpw,
krb5_set_password(krb5_context context, krb5_creds *creds, const char *newpw,
krb5_principal change_password_for, int *result_code,
krb5_data *result_code_string, krb5_data *result_string);

Expand Down Expand Up @@ -5108,7 +5108,8 @@ krb5_set_password(krb5_context context, krb5_creds *creds, char *newpw,
*/
krb5_error_code KRB5_CALLCONV
krb5_set_password_using_ccache(krb5_context context, krb5_ccache ccache,
char *newpw, krb5_principal change_password_for,
const char *newpw,
krb5_principal change_password_for,
int *result_code, krb5_data *result_code_string,
krb5_data *result_string);

Expand Down
4 changes: 2 additions & 2 deletions src/lib/krb5/krb/chpw.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ krb5_error_code
krb5int_mk_chpw_req(krb5_context context,
krb5_auth_context auth_context,
krb5_data *ap_req,
char *passwd,
const char *passwd,
krb5_data *packet)
{
krb5_error_code ret = 0;
Expand Down Expand Up @@ -284,7 +284,7 @@ krb5int_mk_setpw_req(krb5_context context,
krb5_auth_context auth_context,
krb5_data *ap_req,
krb5_principal targprinc,
char *passwd,
const char *passwd,
krb5_data *packet)
{
krb5_error_code ret;
Expand Down
4 changes: 2 additions & 2 deletions src/lib/krb5/krb/int-proto.h
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ k5_privsafe_check_addrs(krb5_context context, krb5_auth_context ac,

krb5_error_code
krb5int_mk_chpw_req(krb5_context context, krb5_auth_context auth_context,
krb5_data *ap_req, char *passwd, krb5_data *packet);
krb5_data *ap_req, const char *passwd, krb5_data *packet);

krb5_error_code
krb5int_rd_chpw_rep(krb5_context context, krb5_auth_context auth_context,
Expand All @@ -166,7 +166,7 @@ krb5_chpw_result_code_string(krb5_context context, int result_code,
krb5_error_code
krb5int_mk_setpw_req(krb5_context context, krb5_auth_context auth_context,
krb5_data *ap_req, krb5_principal targetprinc,
char *passwd, krb5_data *packet);
const char *passwd, krb5_data *packet);

void
k5_ccselect_free_context(krb5_context context);
Expand Down
10 changes: 5 additions & 5 deletions src/lib/krb5/os/changepw.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ struct sendto_callback_context {
krb5_context context;
krb5_auth_context auth_context;
krb5_principal set_password_for;
char *newpw;
const char *newpw;
krb5_data ap_req;
krb5_ui_4 remote_seq_num, local_seq_num;
};
Expand Down Expand Up @@ -207,7 +207,7 @@ kpasswd_sendto_msg_callback(SOCKET fd, void *data, krb5_data *message)
static krb5_error_code
change_set_password(krb5_context context,
krb5_creds *creds,
char *newpw,
const char *newpw,
krb5_principal set_password_for,
int *result_code,
krb5_data *result_code_string,
Expand Down Expand Up @@ -328,7 +328,7 @@ change_set_password(krb5_context context,
krb5_error_code KRB5_CALLCONV
krb5_change_password(krb5_context context,
krb5_creds *creds,
char *newpw,
const char *newpw,
int *result_code,
krb5_data *result_code_string,
krb5_data *result_string)
Expand All @@ -345,7 +345,7 @@ krb5_change_password(krb5_context context,
krb5_error_code KRB5_CALLCONV
krb5_set_password(krb5_context context,
krb5_creds *creds,
char *newpw,
const char *newpw,
krb5_principal change_password_for,
int *result_code,
krb5_data *result_code_string,
Expand All @@ -359,7 +359,7 @@ krb5_set_password(krb5_context context,
krb5_error_code KRB5_CALLCONV
krb5_set_password_using_ccache(krb5_context context,
krb5_ccache ccache,
char *newpw,
const char *newpw,
krb5_principal change_password_for,
int *result_code,
krb5_data *result_code_string,
Expand Down

0 comments on commit fca6f10

Please sign in to comment.