diff options
Diffstat (limited to 'php')
-rw-r--r-- | php/environs/lasso_login.c | 49 |
1 files changed, 48 insertions, 1 deletions
diff --git a/php/environs/lasso_login.c b/php/environs/lasso_login.c index a73e18b0..165b6ec5 100644 --- a/php/environs/lasso_login.c +++ b/php/environs/lasso_login.c @@ -193,7 +193,6 @@ PHP_FUNCTION(lasso_login_build_authn_request_msg) { } /* }}} */ - /* {{{ proto lasso_login_init_request(resource login, string response_msg, long response_method) */ PHP_FUNCTION(lasso_login_init_request) { @@ -249,3 +248,51 @@ PHP_FUNCTION(lasso_login_process_response_msg) { /* }}} */ +/* {{{ proto lasso_login_accept_sso(resource login) */ +PHP_FUNCTION(lasso_login_accept_sso) { + + LassoLogin *login; + zval *parm; + + int num_args; + int ret; + + if ((num_args = ZEND_NUM_ARGS()) != 1) + WRONG_PARAM_COUNT + + if (zend_parse_parameters(num_args TSRMLS_CC, "z", &parm) == FAILURE) { + return; + } + + ZEND_FETCH_RESOURCE(login, LassoLogin *, &parm, -1, le_lassologin_name, le_lassologin); + + lasso_login_accept_sso(login); +} +/* }}} */ + + +/* {{{ proto lasso_login_set_identity_from_dump(resource login, string dump) */ +PHP_FUNCTION(lasso_login_set_identity_from_dump) { + + LassoLogin *login; + char *dump; + int dump_len; + + zval *parm; + + int num_args; + int ret; + + if ((num_args = ZEND_NUM_ARGS()) != 2) + WRONG_PARAM_COUNT + + if (zend_parse_parameters(num_args TSRMLS_CC, "zs", &parm, + &dump, &dump_len) == FAILURE) { + return; + } + + ZEND_FETCH_RESOURCE(login, LassoLogin *, &parm, -1, le_lassologin_name, le_lassologin); + + lasso_login_set_identity_from_dump(login, dump); +} +/* }}} */ |