- vec[(*vecp)++] = mh_oauth_do_xoauth(user, auth_svc, snoop ? stderr : NULL);
- } else {
- vec[(*vecp)++] = getcpy(auth_svc);
+ if (! mh_oauth_get_service_info(auth_svc, &svc, errbuf,
+ sizeof(errbuf)))
+ adios(NULL, "Unable to retrieve oauth profile entries: %s",
+ errbuf);
+
+ vec[(*vecp)++] = mh_xstrdup("-authservice");
+ vec[(*vecp)++] = mh_xstrdup(auth_svc);
+ vec[(*vecp)++] = mh_xstrdup("-oauthcredfile");
+ vec[(*vecp)++] = mh_xstrdup(mh_oauth_cred_fn(auth_svc));
+ vec[(*vecp)++] = mh_xstrdup("-oauthclientid");
+ vec[(*vecp)++] = getcpy(svc.client_id);
+ vec[(*vecp)++] = mh_xstrdup("-oauthclientsecret");
+ vec[(*vecp)++] = getcpy(svc.client_secret);
+ vec[(*vecp)++] = mh_xstrdup("-oauthauthendpoint");
+ vec[(*vecp)++] = getcpy(svc.auth_endpoint);
+ vec[(*vecp)++] = mh_xstrdup("-oauthredirect");
+ vec[(*vecp)++] = getcpy(svc.redirect_uri);
+ vec[(*vecp)++] = mh_xstrdup("-oauthtokenendpoint");
+ vec[(*vecp)++] = getcpy(svc.token_endpoint);
+ vec[(*vecp)++] = mh_xstrdup("-oauthscope");
+ vec[(*vecp)++] = getcpy(svc.scope);