Beispiel #1
0
cstr *ssrp_client_start(SRP *srpc, cstr *modulus, cstr *generator, cstr *salt, const char *user)
{
    SRP_RESULT rc;
    cstr * client_pub = NULL;

    rc = SRP_set_username(srpc, user);
    check(SRP_OK(rc), "Failed to set client username.");

    rc = SRP_set_params(srpc, modulus->data, modulus->length,
            generator->data, generator->length,
            salt->data, salt->length);
    check(SRP_OK(rc), "SRP_set_params failed\n");

    rc = SRP_gen_pub(srpc, &client_pub);
    check(SRP_OK(rc), "SRP_gen_pub failed\n");

    return client_pub;

error:
    return NULL;
}
Beispiel #2
0
cstr *ssrp_server_start(SRP *srps, cstr *modulus, cstr *generator,
        cstr *salt, cstr *auth, const char * user)
{
    SRP_RESULT rc;
    cstr *server_pub = NULL;

    rc = SRP_set_username(srps, user);
    check(SRP_OK(rc), "SRP_set_username failed\n");

    rc = SRP_set_params(srps, modulus->data, modulus->length,
            generator->data, generator->length, salt->data, salt->length);
    check(SRP_OK(rc), "SRP_set_params failed\n");

    rc = SRP_set_authenticator(srps, auth->data, auth->length);
    check(SRP_OK(rc), "SRP_set_authenticator failed\n");

    rc = SRP_gen_pub(srps, &server_pub);
    check(SRP_OK(rc), "SRP_gen_pub failed\n");

    return server_pub;

error:
    return NULL;
}
Beispiel #3
0
SRP_server_init_user(SRP * srp, const char * username)
{
  SRP_set_server_lookup(srp, SRP_SERVER_system_lookup());
  return SRP_set_username(srp, username);
}