~azzar1/snapd-glib-fork/glib-2-40

« back to all changes in this revision

Viewing changes to snapd-glib/snapd-client.c

  • Committer: Robert Ancell
  • Date: 2016-09-03 00:19:19 UTC
  • Revision ID: git-v1:3549ad97b8ba19492eb26b92807d41678550a72d
Make snapd_client_login consistent with snapd_login (since we added snapd_login_service and this is not the normal case anymore)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1780
1780
 *
1781
1781
 * Log in to snapd and get authorization to install/remove snaps.
1782
1782
 * This call requires root access; use snapd_login_sync() if you are non-root.
1783
 
 * If successful, the authorization data is updated and can be requested using
1784
 
 * snapd_client_get_auth_data().
1785
1783
 *
1786
 
 * Returns: %TRUE if the login was successful.
 
1784
 * Returns: (transfer full): a #SnapdAuthData or %NULL on error.
1787
1785
 */
1788
 
gboolean
 
1786
SnapdAuthData *
1789
1787
snapd_client_login_sync (SnapdClient *client,
1790
1788
                         const gchar *username, const gchar *password, const gchar *otp,
1791
1789
                         GCancellable *cancellable, GError **error)
1792
1790
{
1793
1791
    g_autoptr(SnapdRequest) request = NULL;
1794
1792
 
1795
 
    g_return_val_if_fail (SNAPD_IS_CLIENT (client), FALSE);
1796
 
    g_return_val_if_fail (username != NULL, FALSE);
1797
 
    g_return_val_if_fail (password != NULL, FALSE);
1798
 
    g_return_val_if_fail (is_connected (client), FALSE);
 
1793
    g_return_val_if_fail (SNAPD_IS_CLIENT (client), NULL);
 
1794
    g_return_val_if_fail (username != NULL, NULL);
 
1795
    g_return_val_if_fail (password != NULL, NULL);
 
1796
    g_return_val_if_fail (is_connected (client), NULL);
1799
1797
 
1800
1798
    request = g_object_ref (make_login_request (client, username, password, otp, cancellable, NULL, NULL));
1801
1799
    snapd_request_wait (request);
1835
1833
 * Complete request started with snapd_client_login_async().
1836
1834
 * See snapd_client_login_sync() for more information.
1837
1835
 *
1838
 
 * Returns: %TRUE if the login was successful.
 
1836
 * Returns: (transfer full): a #SnapdAuthData or %NULL on error.
1839
1837
 */
1840
 
gboolean
 
1838
SnapdAuthData *
1841
1839
snapd_client_login_finish (SnapdClient *client, GAsyncResult *result, GError **error)
1842
1840
{
1843
 
    SnapdClientPrivate *priv;
1844
1841
    SnapdRequest *request;
1845
1842
 
1846
 
    g_return_val_if_fail (SNAPD_IS_CLIENT (client), FALSE);
1847
 
    g_return_val_if_fail (SNAPD_IS_REQUEST (result), FALSE);
1848
 
    g_return_val_if_fail (is_connected (client), FALSE);
1849
 
 
1850
 
    priv = snapd_client_get_instance_private (client);
 
1843
    g_return_val_if_fail (SNAPD_IS_CLIENT (client), NULL);
 
1844
    g_return_val_if_fail (SNAPD_IS_REQUEST (result), NULL);
 
1845
    g_return_val_if_fail (is_connected (client), NULL);
1851
1846
 
1852
1847
    request = SNAPD_REQUEST (result);
1853
 
    g_return_val_if_fail (request->request_type == SNAPD_REQUEST_LOGIN, FALSE);
 
1848
    g_return_val_if_fail (request->request_type == SNAPD_REQUEST_LOGIN, NULL);
1854
1849
 
1855
1850
    if (snapd_request_set_error (request, error))
1856
 
        return FALSE;
1857
 
 
1858
 
    g_clear_object (&priv->auth_data);
1859
 
    priv->auth_data = g_object_ref (request->received_auth_data);
1860
 
 
1861
 
    return TRUE;
 
1851
        return NULL;
 
1852
 
 
1853
    return g_steal_pointer (&request->received_auth_data);
1862
1854
}
1863
1855
 
1864
1856
/**