Authen-ACE

 view release on metacpan or  search on metacpan

ACE.xs  view on Meta::CPAN

	if (sd) RETVAL = (sd_init(sd) == 0)? sd : NULL;

	OUTPUT:
	RETVAL

void
sd_auth(sd, username="")
	SDClient *	sd
	char *		username

	PPCODE:
	{
		int result;
		if (strlen(username)) strncpy(sd->username, username, LENACMNAME);
		EXTEND(sp, 1);
		result = sd_auth(sd);
		PUSHs(sv_2mortal(newSViv(result)));
		if (result == ACM_OK) {
			EXTEND(sp, 1);
			PUSHs(sv_2mortal(newSVpv(sd->shell, strlen(sd->shell))));
		}
	}

void
sd_check(password="", username, sd)
	char *		password
	char *		username
	SDClient *	sd

	PPCODE:
	{
		int result;
		result = sd_check(password, username, sd);

		EXTEND(sp, 1);
		PUSHs(sv_2mortal(newSViv(result)));

		switch (result) {
		case ACM_OK:
			EXTEND(sp, 1);

ACE.xs  view on Meta::CPAN

			PUSHs(sv_2mortal(newSViv(sd->alphanumeric)));
			break;
		}
	}

void 
sd_next(next, sd)
	char *		next
	SDClient *	sd

	PPCODE:
	{
		int result;
		EXTEND(sp, 1);
		result = sd_next(next, sd);
		PUSHs(sv_2mortal(newSViv(result)));
		if (result == ACM_OK) {
			EXTEND(sp, 1);
			PUSHs(sv_2mortal(newSVpv(sd->shell, strlen(sd->shell))));
		}
	}



( run in 1.179 second using v1.01-cache-2.11-cpan-71847e10f99 )