|
|
|
@ -73,7 +73,7 @@ PEP_STATUS elect_pubkey(
|
|
|
|
|
return PEP_STATUS_OK;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen);
|
|
|
|
|
PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen, bool ignore_flags);
|
|
|
|
|
|
|
|
|
|
DYNAMIC_API PEP_STATUS update_identity(
|
|
|
|
|
PEP_SESSION session, pEp_identity * identity
|
|
|
|
@ -92,7 +92,7 @@ DYNAMIC_API PEP_STATUS update_identity(
|
|
|
|
|
|
|
|
|
|
if (identity->me || (identity->user_id && strcmp(identity->user_id, PEP_OWN_USERID) == 0)) {
|
|
|
|
|
identity->me = true;
|
|
|
|
|
return _myself(session, identity, false);
|
|
|
|
|
return _myself(session, identity, false, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int _no_user_id = EMPTYSTR(identity->user_id);
|
|
|
|
@ -104,7 +104,7 @@ DYNAMIC_API PEP_STATUS update_identity(
|
|
|
|
|
&stored_identity);
|
|
|
|
|
if (status == PEP_STATUS_OK) {
|
|
|
|
|
free_identity(stored_identity);
|
|
|
|
|
return _myself(session, identity, false);
|
|
|
|
|
return _myself(session, identity, false, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
free(identity->user_id);
|
|
|
|
@ -400,7 +400,7 @@ PEP_STATUS _has_usable_priv_key(PEP_SESSION session, char* fpr,
|
|
|
|
|
return status;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen)
|
|
|
|
|
PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen, bool ignore_flags)
|
|
|
|
|
{
|
|
|
|
|
pEp_identity *stored_identity;
|
|
|
|
|
PEP_STATUS status;
|
|
|
|
@ -419,6 +419,8 @@ PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen)
|
|
|
|
|
|
|
|
|
|
identity->comm_type = PEP_ct_pEp;
|
|
|
|
|
identity->me = true;
|
|
|
|
|
if(ignore_flags)
|
|
|
|
|
identity->flags = 0;
|
|
|
|
|
|
|
|
|
|
if (EMPTYSTR(identity->user_id))
|
|
|
|
|
{
|
|
|
|
@ -463,7 +465,7 @@ PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
identity->flags = stored_identity->flags;
|
|
|
|
|
identity->flags = (identity->flags & 255) | stored_identity->flags;
|
|
|
|
|
|
|
|
|
|
free_identity(stored_identity);
|
|
|
|
|
}
|
|
|
|
@ -483,7 +485,6 @@ PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen)
|
|
|
|
|
|
|
|
|
|
// N.B. has_private is never true if the returned status is not PEP_STATUS_OK
|
|
|
|
|
if (has_private) {
|
|
|
|
|
identity->flags = 0;
|
|
|
|
|
dont_use_input_fpr = false;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -510,7 +511,6 @@ PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (has_private) {
|
|
|
|
|
identity->flags = 0;
|
|
|
|
|
dont_use_input_fpr = false;
|
|
|
|
|
}
|
|
|
|
|
else { // OK, we've tried everything. Time to generate new keys.
|
|
|
|
@ -621,7 +621,7 @@ PEP_STATUS _myself(PEP_SESSION session, pEp_identity * identity, bool do_keygen)
|
|
|
|
|
|
|
|
|
|
DYNAMIC_API PEP_STATUS myself(PEP_SESSION session, pEp_identity * identity)
|
|
|
|
|
{
|
|
|
|
|
return _myself(session, identity, true);
|
|
|
|
|
return _myself(session, identity, true, false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
DYNAMIC_API PEP_STATUS register_examine_function(
|
|
|
|
|