🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.perl
6 messages
6 total messages Started by Piotr Auksztulewicz Wed, 30 Jul 1997 14:51
XSUBy...
#463
Author: Piotr Auksztulewicz
Date: Wed, 30 Jul 1997 14:51
13 lines
1035 bytes
Jescze raz, bo nie wiem, czy poszlo...

Poszukuje kogos, kto zna sie dobrze na XSUBach i w ogole na interfejsie
miedzy perlem a C. Mecze sie od jakiegos tygodnia nad sensownym
interfejsem do bazy danych o userach TCB (patrz getprpwent(3)),
pomalu mi cos wychodzi, ale z duzym bolem. Znowu utknalem na takim czyms,
co mi nie dziala i nie wiem dlaczego...

POMOCY!

--
Piotr Auksztulewicz                 piotras@zeus.polsl.gliwice.pl
Centrum Komputerowe Politechniki Slaskiej, Gliwice, Akademicka 16
Re: XSUBy...
#464
Author: Piotr Auksztulewicz
Date: Thu, 31 Jul 1997 14:20
59 lines
2324 bytes
Piotr Auksztulewicz (piotras@polsl.gliwice.pl) wrote:
: pomalu mi cos wychodzi, ale z duzym bolem. Znowu utknalem na takim czyms,
: co mi nie dziala i nie wiem dlaczego...

No tak. Tego sie mozna bylo spodziewac. Glupi blad najtrudniej znalezc.
K....! dwa dni sie meczylem, zanim znalazlem blad. Zagadka dla was:
co tu jest zle i dlaczego. Dla pierwszego, kto zgadnie, stawiam piwo
w Casa Austria w Gliwicach (fajna knajpa, BTW).
Hint: nie trzeba znac perla, wystarczy znac C!

#include <hpsecurity.h>
#include <prot.h>


MODULE = Auth::Hpsecurity		PACKAGE = Auth::Hpsecurity

/* tu bylo jeszcze pare funkcji, ale one dzialaly... */

int
putprpwnam(name, href)
	char *name
	SV *href
	PROTOTYPE: $\%
	CODE:
	if (!SvROK(href) || SvTYPE(SvRV(href)) != SVt_PVHV)
	    croak("Second argument is not a reference to a hash");
	else {
	    HV *hash = (HV *)SvRV(href);
	    SV *item;
	    char *string;
	    STRLEN slen;
	    struct pr_passwd pswd;
	    memset(&pswd, sizeof(pswd), 0);

	    if (hv_exists(hash, AUTH_U_NAME, strlen(AUTH_U_NAME))) {
		pswd.uflg.fg_name = 1;
		item = *hv_fetch(hash, AUTH_U_NAME, strlen(AUTH_U_NAME), 0);
		string = SvPV(item, slen);
		strncpy(pswd.ufld.fd_name, string, slen);
		pswd.ufld.fd_name[slen] = '\0';
	    }
	    if (hv_exists(hash, AUTH_U_ID, strlen(AUTH_U_ID))) {
		pswd.uflg.fg_uid = 1;
		item = *hv_fetch(hash, AUTH_U_ID, strlen(AUTH_U_ID), 0);
		pswd.ufld.fd_uid = SvIV(item);
	    }

	    /* itd. itp. wiecej takich if'ow ... */

	    RETVAL = putprpwnam(name, &pswd);
	}

	OUTPUT:
	RETVAL


--
Piotr Auksztulewicz                 piotras@zeus.polsl.gliwice.pl
Centrum Komputerowe Politechniki Slaskiej, Gliwice, Akademicka 16
Re: XSUBy...
#465
Author: Piotr Piatkowski
Date: Thu, 31 Jul 1997 16:06
25 lines
1617 bytes
Piotr Auksztulewicz <piotras@polsl.gliwice.pl> wrote:
: Piotr Auksztulewicz (piotras@polsl.gliwice.pl) wrote:
: : pomalu mi cos wychodzi, ale z duzym bolem. Znowu utknalem na takim czyms,
: : co mi nie dziala i nie wiem dlaczego...

: No tak. Tego sie mozna bylo spodziewac. Glupi blad najtrudniej znalezc.
: K....! dwa dni sie meczylem, zanim znalazlem blad. Zagadka dla was:
: co tu jest zle i dlaczego. Dla pierwszego, kto zgadnie, stawiam piwo
: w Casa Austria w Gliwicach (fajna knajpa, BTW).
: Hint: nie trzeba znac perla, wystarczy znac C!

: 	    struct pr_passwd pswd;
: 	    memset(&pswd, sizeof(pswd), 0);
            ....

: 	    RETVAL = putprpwnam(name, &pswd);

Czyżbyś zwracał gdzieś wskaźnik do zmiennej dynamicznej? :-)

A jeżeli chodzi o perlguts - mam zamiar nad tym posiedzieć na 
jesieni - wtedy może będę mógł coś pomóc. Jak chcesz, możesz poczekać
:-)

-- 
Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Re: XSUBy...
#466
Author: Piotr Auksztulewicz
Date: Thu, 31 Jul 1997 16:29
14 lines
1231 bytes
Piotr Piatkowski (kompas@galaxy.uci.agh.edu.pl) wrote:
: Czyżbyś zwracał gdzieś wskaźnik do zmiennej dynamicznej? :-)

Nie trafiles. Strzelaj dalej :-)
Aha, konkurs trwa do jutra, bo od poniedzialku jestem na urlopie...

: A jeżeli chodzi o perlguts - mam zamiar nad tym posiedzieć na 
: jesieni - wtedy może będę mógł coś pomóc. Jak chcesz, możesz poczekać

Oj, do tego czasu to juz chyba ja bede Tobie mogl pomoc...

--
Piotr Auksztulewicz                 piotras@zeus.polsl.gliwice.pl
Centrum Komputerowe Politechniki Slaskiej, Gliwice, Akademicka 16
Re: XSUBy...
#467
Author: Piotr Auksztulewicz
Date: Fri, 01 Aug 1997 15:21
13 lines
1207 bytes
Piotr Auksztulewicz (piotras@polsl.gliwice.pl) wrote:
: Nie trafiles. Strzelaj dalej :-)
: Aha, konkurs trwa do jutra, bo od poniedzialku jestem na urlopie...

No wlasnie. Do zobaczenia za dwa tygodnie.
Poniewaz nikt nie zgadl, podpowiadam (ale nagrody juz nie bedzie):
spojrzcie na wywolanie memset - czy na pewno jest dobrze ? ;-)))

No to na razie, pa, pa!

---
Piotr Auksztulewicz                 piotras@zeus.polsl.gliwice.pl
Centrum Komputerowe Politechniki Slaskiej, Gliwice, Akademicka 16
Re: XSUBy...
#468
Author: Piotr Piatkowski
Date: Sat, 02 Aug 1997 20:25
16 lines
1512 bytes
Piotr Auksztulewicz <piotras@polsl.gliwice.pl> wrote:
: Piotr Auksztulewicz (piotras@polsl.gliwice.pl) wrote:
: : Nie trafiles. Strzelaj dalej :-)
: : Aha, konkurs trwa do jutra, bo od poniedzialku jestem na urlopie...

: No wlasnie. Do zobaczenia za dwa tygodnie.
: Poniewaz nikt nie zgadl, podpowiadam (ale nagrody juz nie bedzie):
: spojrzcie na wywolanie memset - czy na pewno jest dobrze ? ;-)))

No tak - to wcale nie był głupi błąd, to był błąd beznadziejny... Bez
gruntownego debugingu raczej nie dało się go zauważyć (no bo jak 
często używa się memset()? Mi się to zdaża raz na pół roku :-) )
OK, OK - w każdym razie *ja* nie byłbym go w stanie zauważyć :-)

-- 
Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads