Re: [PHP-DEV] Reading php.ini

2003-01-31 Thread Thomas Wentzel
Vinod Panicker wrote:
> 
> Hi,
> 
> Could someone pls point me to some documentation on how to access values
> from php.ini in my php extension?
> 
> Tx,
> Vinod.

http://zend.com/apidoc/zend.ini-file-support.php


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] PHP extension initialisation

2002-12-12 Thread Thomas Wentzel
Hi Tom,

Did you ever get this problem solved?
I'm fighting the same issue - and if no better solution present it self,
I'm going
to do it by accessing a file of my choise. If the file doesn't exist -
create it and we
know we are in the first call. If it does exist - delete it, and we know
this is the
second call. This is obviously an ugly hack, so I really hope you've
come up with
something cleaner.

TIA
  Thomas

On  Wed, 21 Aug 2002, you wrote:
>I had already assumed what Pete said was happening was happening, but I
still
>don't know how to tell whether I'm in the first one (apache test) or
the second
>(real init). Any ideas?
>Tom


>On Wed, 21 Aug 2002, you wrote:
>> Hi,
>>
>> I asked about this a few weeks ago with apache on windows.
>>
>> The best answer I got was from George Schlossnagle:
>>
>> I believe this is because when apache does it's intial
configtest run
>> as
>> part of start (to validate it's config), it has to do a complete
startup
>> (otherwise it wouldn't know about conf params used by modules loaded
as
>> DSOs.  So you see a startup; shutdown; startup.
>>
>> that's exactly what I saw happen so seeing as shutdown occurs as well
it
>> wasn't a problem in my case.
>>
>>
>> Pete
>>
>> --
>> "Tom Oram" <[EMAIL PROTECTED]> wrote in message
>> [EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
>> On Thu, 15 Aug 2002, you wrote:
>> > --- Tom Oram <[EMAIL PROTECTED]> wrote:
>> >> Hi,
>> >> Can someone please answer my question?
>> >>
>> >> When running a PHP extension when PHP is running as an apache
module on
>> linux
>> >> it's module init function (PHP_MINIT_FUNCTION) gets called twice,
once
>> before
>> >> apache forks then once after, is there any way of finding out
which
>> >> init you are in. I can't keep a global variable because it get
losted in
>> >> between init calls, and environment vars/file locks/shared
mem/semephores
>> are
>> >> not options.
>> >
>> > Are you on Windows IIS? I believe someone recently just asked about
that
>> same
>> > thing. There was a valid explination for it.
>>
>> No linux, I did say ;), but thanks anyway.
>> The question still stands open, anyone?
>>
>> >> One other quicky, is there a way to find out inside the extension
if it
>> is
>> >> being run from with an apache module or its it a standalone
executable
>> (or
>> >> running under a different webserver as my module can only ever run
with
>> >> apache)?
>> >
>> > I believe you could
>> > #include "SAPI.h"
>> >
>> > if(!strcmp(sapi_module.name, "cgi") || strcmp(sapi_module.name,
"cli")) {
>> >   printf("compiled as a command line executable");
>> > }
>>
>> This is probably what I need thanks
>>
>> >>
>> >> Thanks for your time,
>> >> Tom
>> >>
>> >> --
>> >>
>> >> ***
>> >> Tom Oram
>> >> SCL Computer Services
>> >> URL http://www.scl.co.uk/
>> >> ***
>> >>
>> >> --
>> >> PHP Development Mailing List 
>> >> To unsubscribe, visit: http://www.php.net/unsub.php
>> >>
>> >
>> >
>> > __
>> > Do You Yahoo!?
>> > HotJobs - Search Thousands of New Jobs
>> > http://www.hotjobs.com
>> --
>>
>> ***
>> Tom Oram
>> SCL Computer Services
>> URL http://www.scl.co.uk/
>> ***
>> --
>>
>> ***
>> Tom Oram
>> SCL Computer Services
>> URL http://www.scl.co.uk/
>> ***
>--

>***
>Tom Oram
>SCL Computer Services
>URL http://www.scl.co.uk/
>***

>--
>PHP Development Mailing List 
>To unsubscribe, visit: http://www.php.net/unsub.php


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-DEV] MINIT RINIT et al

2002-12-10 Thread Thomas Wentzel
Ok!

My last postings were about the lack of global init/shutdown functions.
Derick
was kind enough to tell me, that these were deprecated and that I should
use MINIT
for my initalisations. Well.. this was what I had been doing until it
just didn't seem
adequate for my needs. I decided to give it another go but my attempts
have given rise
to some issues I need explained.

As I'm compiling my modules into php I understand and have verified that
MINIT is
called whenever I start apache. (and MSHUTDOWN when I stop apache)

RINIT/RSHUTDOWN continue to baffle me though. Why do RINIT get called
when I
start apache? (after MINIT). Shouldn't that happen only if I had
compiled my extension as
a dynamic extension, that required dl'ing?
In fact RINIT/RSHUTDOWN only gets called once (when starting/stopping
apache).

As I read the documentation RINIT should be called whenever I direct my
browser to a
page which requires php, and RSHUTDOWN when that request has ended. Am I
getting
this all backwards?

TIA
  Thomas


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] Macros for global startup/shutdown functions

2002-12-10 Thread Thomas Wentzel
Derick Rethans wrote:

> Just move them to module startup/shutdown; it doesn't make any
> difference anyway.
>

That's what I have been doing so far You are probably right, guess it's
a matter of rethinking my code again ;)

>
> > Do you recall in which version this functionality was removed?
>
> no, I really dont recall, try lxr.php.net :)
>

Yeah, of course! Sorry forgot about that one! :)

>
> Derick
>
> --
>
> -
>  Derick Rethans http://derickrethans.nl/
>  PHP Magazine - PHP Magazine for Professionals   http://php-mag.net/
> -

Thanks for your assitance. I would have spent a lot of time digging in to this
if it weren't for you!

Thomas


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] Macros for global startup/shutdown functions

2002-12-10 Thread Thomas Wentzel
Derick Rethans wrote:

> They are indeed not called anymore, as we just removed the
> functionality, but it still compiles of course. However, where did you
> see this documented? It's neither in phpdoc or the ZendAPI docs.
>
> Derick

Well.. a quick glimpse revealed the following two pages (don't know if there
are more)
http://www.zend.com/apidoc/zend.structure.module-block.php
The cell explaining "Remaining structure elements" clearly insinuates
that
the GINIT/GSHUTDOWN be present (not to mention fig. 8-4 :)
http://www.zend.com/apidoc/zend.startup-and-shutdown.php
The first line of the second paragraph also speaks of these...

Would it be too much a pain if I were to modify the code to call my global
functions?
Do you recall in which version this functionality was removed?

/Thomas




-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] Macros for global startup/shutdown functions

2002-12-10 Thread Thomas Wentzel
Thanks, Derick!

Does this also mean, that I can't "hardcode" this functionality?
(ie. adding to functions to the zend_module_entry struct)
As it is I actually have a use for this, and have succesfully compiled
my extension with references to such hardcoded functions - allthough
they don't seem to get called at this point!

/Thomas

Derick Rethans wrote:

> On Tue, 10 Dec 2002, Thomas Wentzel wrote:
>
> > Hi!
> >
> > How come there are no macros for global startup and shutdown functions?
> > The Zend API documentation refers to such terms and even instructs that
> > one should
> > use STANDARD_MODULE_PROPERTIES_EX instead of
> > STANDARD_MODULE_PROPERTIES if global functions are to be used.
> > I have even found references to ZEND_GINIT/GSHUTDOWN on the web, but...
> >
> > Admittedly, I haven't checked newer versions, but as I am using 4.1.2
> > and these terms
> > have been used dating back to the 4.0 release this doesn't seem to be
> > the issue.
>
> GINIT and GSHUTDOWN where removed about a year ago because they weren't
> really used anyway, and had no real purpose anyway for them. *sigh* it
> just shows that the docs are quite outdated; I'll have a look at it now.
>
> Derick
>
> --
>
> -
>  Derick Rethans http://derickrethans.nl/
>  PHP Magazine - PHP Magazine for Professionals   http://php-mag.net/
> -


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-DEV] Macros for global startup/shutdown functions

2002-12-10 Thread Thomas Wentzel
Hi!

How come there are no macros for global startup and shutdown functions?
The Zend API documentation refers to such terms and even instructs that
one should
use STANDARD_MODULE_PROPERTIES_EX instead of
STANDARD_MODULE_PROPERTIES if global functions are to be used.
I have even found references to ZEND_GINIT/GSHUTDOWN on the web, but...

Admittedly, I haven't checked newer versions, but as I am using 4.1.2
and these terms
have been used dating back to the 4.0 release this doesn't seem to be
the issue.

Regards
  Thomas


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-DEV] SIGPIPE

2002-11-07 Thread Thomas Wentzel
Hi!

I have a problem with an extension that I wrote for communicating with
an old version of raima
(a database). The problem is that whenever a SIGPIPE occurs, the
database acts up!
Well - I am hoping someone could give me a poitner as how - or rather
where - to handle the SIGPIPE.
a search in the php source shows, that SIGPIPE is only handle in
ext/mysql and sapi. Should I do a
SIG_IGN in my extension or should I mess with the source of raima (which
I have available)?

TIA
  Thomas


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-DEV] CVS Account Request: wentzel

2002-03-19 Thread Thomas Wentzel

Tanslating the documentation into danish

-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars

2002-03-04 Thread Thomas Wentzel

As I mentioned earlier - it is not because I don't know how to
circumvent it
but next to actually fixing the bugs/issues I just felt that reporting
them
would be a good thing :)

/Thomas

Rasmus Lerdorf wrote:
> 
> Should work just fine.  But since you don't seem to care how you do it, I
> don't understand why you don't just do the obvious.  Loop through the GET
> vars and set each one.  ie.
> 
> foreach($HTTP_GET_VARS as $name=>$val) $$name=$val;
> 
> -Rasmus
> 
> On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> 
> > PHP 4.1.2 std. no CVS
> >
> > Rasmus Lerdorf wrote:
> > >
> > > Which version of PHP?  I tested your file123 thing here and it worked just
> > > fine.
> > >
> > > On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> > >
> > > > I'm very sorry, but it seems - that the solution with
> > > > import_request_variables
> > > > is even worse. I've tried import_request_variables with ("g","f") and
> > > > ("g","foo")
> > > > but now foo isn't even set in file2.php (the url arg to file3 is now
> > > > "bar")
> > > >
> > > > Thomas Wentzel wrote:
> > > > >
> > > > > OK! Thanks, Rasmus!
> > > > >
> > > > > That will allow me to keep working on my current model
> > > > >
> > > > > /Thomas
> > > > >
> > > > > Rasmus Lerdorf wrote:
> > > > > >
> > > > > > Use import_request_variables('g') instead of parse_str($QUERY_STRING) for
> > > > > > now. It does the same thing in your case in a more efficient manner. I
> > > > > > think the session code is holding a reference to the original data and
> > > > > > php_treat_data() is not doing the right thing when overwriting existing
> > > > > > vars. Or something funky like that. It is too late at night to figure this
> > > > > > particular code out.
> > > > > >
> > > > > > -Rasmus
> > > >
> > >
> > > --
> > > PHP Development Mailing List <http://www.php.net/>
> > > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, visit: http://www.php.net/unsub.php


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars

2002-03-04 Thread Thomas Wentzel

PHP 4.1.2 std. no CVS

Rasmus Lerdorf wrote:
> 
> Which version of PHP?  I tested your file123 thing here and it worked just
> fine.
> 
> On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> 
> > I'm very sorry, but it seems - that the solution with
> > import_request_variables
> > is even worse. I've tried import_request_variables with ("g","f") and
> > ("g","foo")
> > but now foo isn't even set in file2.php (the url arg to file3 is now
> > "bar")
> >
> > Thomas Wentzel wrote:
> > >
> > > OK! Thanks, Rasmus!
> > >
> > > That will allow me to keep working on my current model
> > >
> > > /Thomas
> > >
> > > Rasmus Lerdorf wrote:
> > > >
> > > > Use import_request_variables('g') instead of parse_str($QUERY_STRING) for
> > > > now. It does the same thing in your case in a more efficient manner. I
> > > > think the session code is holding a reference to the original data and
> > > > php_treat_data() is not doing the right thing when overwriting existing
> > > > vars. Or something funky like that. It is too late at night to figure this
> > > > particular code out.
> > > >
> > > > -Rasmus
> >
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, visit: http://www.php.net/unsub.php


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars

2002-03-04 Thread Thomas Wentzel

I'm very sorry, but it seems - that the solution with
import_request_variables
is even worse. I've tried import_request_variables with ("g","f") and
("g","foo")
but now foo isn't even set in file2.php (the url arg to file3 is now
"bar")

Thomas Wentzel wrote:
> 
> OK! Thanks, Rasmus!
> 
> That will allow me to keep working on my current model
> 
> /Thomas
> 
> Rasmus Lerdorf wrote:
> >
> > Use import_request_variables('g') instead of parse_str($QUERY_STRING) for
> > now. It does the same thing in your case in a more efficient manner. I
> > think the session code is holding a reference to the original data and
> > php_treat_data() is not doing the right thing when overwriting existing
> > vars. Or something funky like that. It is too late at night to figure this
> > particular code out.
> >
> > -Rasmus


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars

2002-03-04 Thread Thomas Wentzel

OK! Thanks, Rasmus!

That will allow me to keep working on my current model

/Thomas

Rasmus Lerdorf wrote:
> 
> Use import_request_variables('g') instead of parse_str($QUERY_STRING) for
> now. It does the same thing in your case in a more efficient manner. I
> think the session code is holding a reference to the original data and
> php_treat_data() is not doing the right thing when overwriting existing
> vars. Or something funky like that. It is too late at night to figure this
> particular code out.
> 
> -Rasmus
> 
> On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> 
> > hehe
> > Thanks - I needed that :)
> >
> > Rasmus Lerdorf wrote:
> > >
> > > It is.  I am looking at it now.  There may actually be a problem.  $foo is
> > > set to foobar, but the session stays at "bar" if $foo is set via
> > > parse_str().  Something funky in the session code.  parse_str() is working
> > > just fine.
> > >
> > > -Rasmus
> > >
> > > On Mon, 4 Mar 2002, Markus Fischer wrote:
> > >
> > > > On Mon, Mar 04, 2002 at 09:21:26AM +0100, Thomas Wentzel wrote :
> > > > > And Markus - thanks, but I tried to subsitute parse_str($QUERY_STRING)
> > > > > with parse_str("foo=foobar") which also didn't set my session var, foo
> > > > > So that is not the problem either!
> > > >
> > > > Ah! I now see what you mean!
> > > >
> > > > Have you double checked that, after parse_str(), $foo is set
> > > > to foobar ?
> > > >
> > > > --
> > > > Please always Cc to me when replying to me on the lists.
> > > > GnuPG Key: http://guru.josefine.at/~mfischer/C2272BD0.asc
> > > >
> >


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars

2002-03-04 Thread Thomas Wentzel

hehe
Thanks - I needed that :)

Rasmus Lerdorf wrote:
> 
> It is.  I am looking at it now.  There may actually be a problem.  $foo is
> set to foobar, but the session stays at "bar" if $foo is set via
> parse_str().  Something funky in the session code.  parse_str() is working
> just fine.
> 
> -Rasmus
> 
> On Mon, 4 Mar 2002, Markus Fischer wrote:
> 
> > On Mon, Mar 04, 2002 at 09:21:26AM +0100, Thomas Wentzel wrote :
> > > And Markus - thanks, but I tried to subsitute parse_str($QUERY_STRING)
> > > with parse_str("foo=foobar") which also didn't set my session var, foo
> > > So that is not the problem either!
> >
> > Ah! I now see what you mean!
> >
> > Have you double checked that, after parse_str(), $foo is set
> > to foobar ?
> >
> > --
> > Please always Cc to me when replying to me on the lists.
> > GnuPG Key: http://guru.josefine.at/~mfischer/C2272BD0.asc
> >


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars

2002-03-04 Thread Thomas Wentzel

Actually, yes it does...

$foo="foobar"; instead of parse_str($QUERY_STRING);
in file2.php - then file3.php echoes "foo: foobar".
Obviously - otherwise there wasn't any point in having sessions.

And Markus - thanks, but I tried to subsitute parse_str($QUERY_STRING) 
with parse_str("foo=foobar") which also didn't set my session var, foo
So that is not the problem either!

/Thomas

Rasmus Lerdorf wrote:
> 
> But your problem has absolutely nothing to do with parse_str().  Does it
> behave differently if you replace parse_str() with $foo="foobar"; ?
> I bet it doesn't.
> 
> On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> 
> > Sure, Rasmus!
> > But...
> > I'm using parse_str because file2 in my example is supposed to be
> > a generic handler for all other scripts on my "site". Offcourse I could
> > use "1.5 million" $HTTP_GET_VARS for each registered session variable
> > (as
> > I wouldn't know what to expect)
> > The reason I did write to this list - is because there obviously is
> > something wrong with the way parse_str works and how it is supposed to
> > work.
> > Not because I don't know how to get around this "obstacle"
> >
> >
> >
> >
> > And the reason I did submit to this list
> > Rasmus Lerdorf wrote:
> > >
> > > You are posting to the wrong list.  And why are you using parse_str()?
> > > PHP automatically imports these variables for you.  Use
> > > $foo=$HTTP_GET_VARS['foo'] in that second script of yours.
> > >
> > > Next time send your user-level question like this to php-general.
> > >
> > > -Rasmus
> > >
> > > On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> > >
> > > > Hi,
> > > >
> > > > I have encountered an issue with parse_str, that I believe needs to
> > > > be addressed - allthough I might be mistaken, and in that case feel
> > > > free to ridicule me - and tell me to go to the general list :)
> > > >
> > > > Well... I want to be able to do something like this:
> > > >
> > > > file1.php:
> > > >> > >   session_start();
> > > >   session_register("foo");
> > > >   $foo="bar";
> > > >   ?>
> > > >   
> > > >   
> > > >   
> > > >
> > > > file2.php:
> > > >> > >   session_start();
> > > >   $old=$foo;
> > > >   parse_str($QUERY_STRING);
> > > >
> > > >   Header("Location: file3.php?old=$old&foo=$foo");
> > > >   ?>
> > > >
> > > > file3.php:
> > > >> > >   session_start();
> > > >   echo "foo: $foo";
> > > >   ?>
> > > >
> > > > >From the manual: (explanation for parse_str)
> > > >   Parses str as if it were the query string passed via an URL and sets
> > > > variables in the current scope. If the second
> > > >   parameter arr is present, variables are stored in this variable as an
> > > > array elements instead.
> > > >
> > > > I would expect that the script would result in file3.php echoing, "foo:
> > > > foobar" - but that's not the case, instead I get: "foo: bar", but the
> > > > url is: "file3.php?old=bar&foo=foobar". Doesn't session_start introduce
> > > > all the registered vars into the current scope - and since parse_str
> > > > "sets varibles in the current scope" why doesn't this scheme work?
> > > >
> > > > Thanks for listening
> > > >   Thomas
> > > >
> > > >
> > > > --
> > > > PHP Development Mailing List <http://www.php.net/>
> > > > To unsubscribe, visit: http://www.php.net/unsub.php
> > > >
> > >
> > > --
> > > PHP Development Mailing List <http://www.php.net/>
> > > To unsubscribe, visit: http://www.php.net/unsub.php
> >


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP-DEV] parse_str and session vars]

2002-03-03 Thread Thomas Wentzel

Sure, Rasmus!
But...
I'm using parse_str because file2 in my example is supposed to be
a generic handler for all other scripts on my "site". Offcourse I could
use "1.5 million" $HTTP_GET_VARS for each registered session variable
(as
I wouldn't know what to expect)
The reason I did write to this list - is because there obviously is 
something wrong with the way parse_str works and how it is supposed to
work.
Not because I don't know how to get around this "obstacle"


Rasmus Lerdorf wrote:
> 
> You are posting to the wrong list.  And why are you using parse_str()?
> PHP automatically imports these variables for you.  Use
> $foo=$HTTP_GET_VARS['foo'] in that second script of yours.
> 
> Next time send your user-level question like this to php-general.
> 
> -Rasmus
> 
> On Mon, 4 Mar 2002, Thomas Wentzel wrote:
> 
> > Hi,
> >
> > I have encountered an issue with parse_str, that I believe needs to
> > be addressed - allthough I might be mistaken, and in that case feel
> > free to ridicule me - and tell me to go to the general list :)
> >
> > Well... I want to be able to do something like this:
> >
> > file1.php:
> >>   session_start();
> >   session_register("foo");
> >   $foo="bar";
> >   ?>
> >   
> >   
> >   
> >
> > file2.php:
> >>   session_start();
> >   $old=$foo;
> >   parse_str($QUERY_STRING);
> >
> >   Header("Location: file3.php?old=$old&foo=$foo");
> >   ?>
> >
> > file3.php:
> >>   session_start();
> >   echo "foo: $foo";
> >   ?>
> >
> > >From the manual: (explanation for parse_str)
> >   Parses str as if it were the query string passed via an URL and sets
> > variables in the current scope. If the second
> >   parameter arr is present, variables are stored in this variable as an
> > array elements instead.
> >
> > I would expect that the script would result in file3.php echoing, "foo:
> > foobar" - but that's not the case, instead I get: "foo: bar", but the
> > url is: "file3.php?old=bar&foo=foobar". Doesn't session_start introduce
> > all the registered vars into the current scope - and since parse_str
> > "sets varibles in the current scope" why doesn't this scheme work?
> >
> > Thanks for listening
> >   Thomas
> >
> >
> > --
> > PHP Development Mailing List <http://www.php.net/>
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, visit: http://www.php.net/unsub.php


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-DEV] parse_str and session vars

2002-03-03 Thread Thomas Wentzel

Hi,

I have encountered an issue with parse_str, that I believe needs to
be addressed - allthough I might be mistaken, and in that case feel
free to ridicule me - and tell me to go to the general list :)

Well... I want to be able to do something like this:

file1.php:
  
  
  
  

file2.php:
  

file3.php:
  ";
  ?>

>From the manual: (explanation for parse_str)
  Parses str as if it were the query string passed via an URL and sets
variables in the current scope. If the second
  parameter arr is present, variables are stored in this variable as an
array elements instead.

I would expect that the script would result in file3.php echoing, "foo:
foobar" - but that's not the case, instead I get: "foo: bar", but the
url is: "file3.php?old=bar&foo=foobar". Doesn't session_start introduce
all the registered vars into the current scope - and since parse_str
"sets varibles in the current scope" why doesn't this scheme work?

Thanks for listening
  Thomas


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php




[PHP-DEV] V_OPEN and memory

2001-11-28 Thread Thomas Wentzel

What happened to V_OPEN/V_GETCWD/...
"I" had them in 4.0.4pl1, but they are gone in 4.0.6 ???

/Thomas


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] enable truetype string function in gd

2001-09-24 Thread Thomas Wentzel

Okay!

Apparently I have to supply the full path when using imagettfbbox and 
imagettftext - This definitely changed from gd-1.8.x to gd-2.x - might
be 
a good idea to add this to the documentation???
But still - There's still an issue about the imageftbbox and imagefttext
functions...

Thomas


Thomas Wentzel wrote:
> 
> I realized that just after posting my question... Though solving my
> configure problem I still can't get freetype to work...
> I had everything running under php-4.0.4 (including gd and freetype 1.x)
> However due to the patent issues it is necessary for me to use freetype2
> which isn't too bad in itself ;)
> Well...
> I saw an "old" submission from Wez claiming that the problems I were
> experiencing wasn't a PHP problem, but rather a gd problem. I tried out
> the little C program he included and true enough - The problem was, that
> gd for some reason didn't include TrueType support (allthough everything
> suggested that it ought to)... Well after searching high and low - I
> found
> this excellent :) link, http://www.alt-php-faq.org/local/68/ , which
> says
> that gd-1.8.x doesn't support freetype2 - and how to successfully
> compile
> gd and freetype into PHP. I realize that this has little to do as such
> with
> the forum of this mailing list, but I also believe, that many get their
> first
> experience with gd end freetype when trying to compile it into php,
> which sort
> of justifies my entry ;)
> Ho hum... Now I have everything up and running - or so it would seem,
> but when
> I try to utilize the imagettfbbox og imagettftext functions I get an
> error saying
> "Could not find/open font". In light of the troubles with gd and
> freetype - it would
> seem likely that this problem also stems from that and not PHP - but I'm
> asking here
> anyway - because it seems that this forum is much more active than the
> various gd and
> freetype forums.
> Another thing... I ran through the ext/gd sources and found some
> functions (not included
> in the manual pages) namely imageftbbox and imagefttext, but whenever I
> try to use these
> functions I get an error saying that freetype2 support wasn't included
> in the PHP build (??)
> Can anybody shed some light on this?
> 
> Thomas
> 
> Rasmus Lerdorf wrote:
> >
> > > I try to get the above mentioned to work with the 4.0.6 release on
> > > Linux!
> > >
> > > But even though I provide the configure script with the
> > > --enable-gd-native-ttf
> > > switch, it reports that the feature is a no go
> >
> > There was a slight buglet in 4.0.6.  Use
> >
> >   --enable-gd-native-tt
> >
> > instead.
> >
> > -Rasmus
> >
> > --
> > PHP Development Mailing List <http://www.php.net/>
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > To contact the list administrators, e-mail: [EMAIL PROTECTED]
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] enable truetype string function in gd

2001-09-24 Thread Thomas Wentzel

I realized that just after posting my question... Though solving my
configure problem I still can't get freetype to work...
I had everything running under php-4.0.4 (including gd and freetype 1.x)
However due to the patent issues it is necessary for me to use freetype2
which isn't too bad in itself ;)
Well...
I saw an "old" submission from Wez claiming that the problems I were 
experiencing wasn't a PHP problem, but rather a gd problem. I tried out
the little C program he included and true enough - The problem was, that
gd for some reason didn't include TrueType support (allthough everything
suggested that it ought to)... Well after searching high and low - I
found
this excellent :) link, http://www.alt-php-faq.org/local/68/ , which
says
that gd-1.8.x doesn't support freetype2 - and how to successfully
compile
gd and freetype into PHP. I realize that this has little to do as such
with
the forum of this mailing list, but I also believe, that many get their
first 
experience with gd end freetype when trying to compile it into php,
which sort
of justifies my entry ;)
Ho hum... Now I have everything up and running - or so it would seem,
but when
I try to utilize the imagettfbbox og imagettftext functions I get an
error saying
"Could not find/open font". In light of the troubles with gd and
freetype - it would 
seem likely that this problem also stems from that and not PHP - but I'm
asking here 
anyway - because it seems that this forum is much more active than the
various gd and 
freetype forums.
Another thing... I ran through the ext/gd sources and found some
functions (not included
in the manual pages) namely imageftbbox and imagefttext, but whenever I
try to use these
functions I get an error saying that freetype2 support wasn't included
in the PHP build (??)
Can anybody shed some light on this?

Thomas

Rasmus Lerdorf wrote:
> 
> > I try to get the above mentioned to work with the 4.0.6 release on
> > Linux!
> >
> > But even though I provide the configure script with the
> > --enable-gd-native-ttf
> > switch, it reports that the feature is a no go
> 
> There was a slight buglet in 4.0.6.  Use
> 
>   --enable-gd-native-tt
> 
> instead.
> 
> -Rasmus
> 
> --
> PHP Development Mailing List 
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] enable truetype string function in gd

2001-09-21 Thread Thomas Wentzel

Hi!

I try to get the above mentioned to work with the 4.0.6 release on
Linux!

But even though I provide the configure script with the
--enable-gd-native-ttf
switch, it reports that the feature is a no go

./configure --enable-modules=so --without-mysql --with-pgsql=/usr/local
\
--with-apxs=/usr/sbin/apxs --with-raima --with-gd=/usr/local \
--with-freetype-dir=/usr/local/include/freetype2 --enable-gd-native-ttf
\
--with-jpeg-dir=/usr --with-xpm-dir=/usr/X11R6 --with-zlib-dir=/usr
--with-png-dir=/usr

:
checking whether to include GD support... yes
checking whether to enable truetype string function in gd... no <- This
really bugs me!!
Never the less... We enable it anyway
checking for the location of libjpeg... yes
checking for jpeg_read_header in -ljpeg... (cached) yes
checking for the location of libpng... yes
checking for png_info_init in -lpng... (cached) yes
checking for the location of libXpm... yes
checking for XpmFreeXpmImage in -lXpm... (cached) yes
checking for freetype(2)... yes
checking whether to include include FreeType 1.x support... no
checking whether to include T1lib support... no
checking for gdImageString16 in -lgd... (cached) yes
checking for gdImagePaletteCopy in -lgd... (cached) yes
checking for gdImageCreateFromPng in -lgd... (cached) yes
checking for gdImageCreateFromGif in -lgd... (cached) no
checking for gdImageWBMP in -lgd... (cached) yes
checking for gdImageCreateFromJpeg in -lgd... (cached) yes
checking for gdImageCreateFromXpm in -lgd... (cached) yes
checking for gdImageCreateTrueColor in -lgd... (cached) no
checking for gdImageSetTile in -lgd... (cached) yes
checking for gdImageSetBrush in -lgd... (cached) yes
checking for gdImageStringFTEx in -lgd... (cached) no
checking for gdImageColorClosestHWB in -lgd... (cached) yes
checking for gdImageColorResolve in -lgd... (cached) yes
checking for gdImageGifCtx in -lgd... (cached) no
:

The "Never the less..." line comes from me trying to force the
definition of USE_GD_IMGSTRTTF in ext/gd/config.m4... And still it
doesn't 
work CAAARP!!! (I simply altered = "yes" to != "yes")

Any thoughts??

/T.


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] ZTS and PHP-4.0.6

2001-09-20 Thread Thomas Wentzel

I just went from php-4.0.4 to php-4.0.6 (linux) and
now my extension won't compile... A lot of bitching
anywhere I use my thread safe globals.. Did anything
change with respect to this between the two versions??

/Thomas


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] LIBSYMBOL??

2001-09-20 Thread Thomas Wentzel

Never mind!!

Incredible what you can learn when reading the source :)

Thomas Wentzel wrote:
> 
> Can anybody tell me what I'm supposed to do with the variable LIBSYMBOL
> in config.m4, when creating extensions (php-4.0.6). What does it refer
> to?
> 
> regards
>  Thomas
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] LIBSYMBOL??

2001-09-20 Thread Thomas Wentzel

Can anybody tell me what I'm supposed to do with the variable LIBSYMBOL
in config.m4, when creating extensions (php-4.0.6). What does it refer
to?


regards
 Thomas


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Bug #13192: PHP fails to execute programs

2001-09-07 Thread Thomas Wentzel

You did check that PHP wasn't running in safe mode???

[EMAIL PROTECTED] wrote:
> 
> From: [EMAIL PROTECTED]
> Operating system: NT server 4.0 sp 6a
> PHP version:  4.0.6
> PHP Bug Type: IIS related
> Bug description:  PHP fails to execute programs
> 
> In the ISAPI mode PHP constantly fails to execute
> 
> external programs throught any function (systemm, exec etc.)
> 
> i.e.
> 
>  
>  echo `dir `;
> 
> ?>
> 
> result:
> 
> Warning: Unable to execute 'dir ' in C:\InetPub\wwwroot\t4.php on line 10
> 
> PHP has encountered an Access Violation at 77F6754B
> 
> sometimes it says "Unable to fork", or "unable to execute".
> 
> P.S. in the CGI mode PHP just silently does nothing.
> --
> Edit bug report at: http://bugs.php.net/?id=13192&edit=1
> 
> --
> PHP Development Mailing List 
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] update: [PHP-DEV] apache segfaults following script execution

2001-08-31 Thread Thomas Wentzel

Hehe...
Should have said, that I'm looking for pointers as to what
can cause such an error...

/Thomas

Thomas Wentzel wrote:
> 
> Hi,
> 
> I'm having a strange problem that I hope some of you can answer...
> 
> I've been writing an extension which I use (obviously :-)
> The problem is that after the script is executed (in it's
> entirety - even PHP_RSHUTDOWN_FUNCTION is executed) apache
> segfaults...
> 
> I used gdb and started apache in "single-thread" mode (using -X)
> - and this is what I get:
> 
> --- output starts here ---
> (gdb) run
> Starting program: /usr/sbin/httpd -X
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x400ed431 in _IO_vfprintf (s=0xb47c, format=0x4086cc80 "%s(%d) :
> Actual location (location was relayed)\n",
> ap=0xb590) at vfprintf.c:1259
> 1259vfprintf.c: No such file or directory.
> --- output ends here ---
> 
> I'm in no way blind to the fact that this probably has something
> to do with my extension, but exactly how has eluded me for some time
> 
> Thanks
>   Thomas
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] apache segfaults following script execution

2001-08-31 Thread Thomas Wentzel

Hi,

I'm having a strange problem that I hope some of you can answer...

I've been writing an extension which I use (obviously :-)
The problem is that after the script is executed (in it's 
entirety - even PHP_RSHUTDOWN_FUNCTION is executed) apache 
segfaults...

I used gdb and started apache in "single-thread" mode (using -X)
- and this is what I get:

--- output starts here ---
(gdb) run
Starting program: /usr/sbin/httpd -X

Program received signal SIGSEGV, Segmentation fault.
0x400ed431 in _IO_vfprintf (s=0xb47c, format=0x4086cc80 "%s(%d) :
Actual location (location was relayed)\n", 
ap=0xb590) at vfprintf.c:1259
1259vfprintf.c: No such file or directory.
--- output ends here ---

I'm in no way blind to the fact that this probably has something
to do with my extension, but exactly how has eluded me for some time

Thanks
  Thomas


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] associative arrays

2001-08-13 Thread Thomas Wentzel

That simple, huh?

What can I say - You are the man!

Thanx

Rasmus Lerdorf wrote:
> 
> Ah, ok.  It's not much harder:
> 
>   pval *tmp_arr;
> 
>   array_init(return_value);
>   MAKE_STD_ZVAL(tmp_arr);
>   array_init(tmp_arr);
>   add_assoc_string(tmp_arr, "string index", "foo", 1);
>   zend_hash_index_update(Z_ARRVAL_P(return_value), 5, &tmp_arr, sizeof(tmp_arr), 
>NULL);
> 
> This will create  $whatever[5]['string index'] = 'foo'
> 
> Or if you want a string index at the top level:
> 
>   zend_hash_update(Z_ARRVAL_P(return_value), "bar", strlen("bar")+1, &tmp_arr, 
>sizeof(tmp_arr), NULL);
> 
> This will create  $whatever['bar']['string index'] = 'foo';
> 
> -Rasmus


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Newbie writing a PHP extension

2001-08-13 Thread Thomas Wentzel

Hi Chris!

I suggest you go out and by the book "Web Application Development with
PHP 4.0"
which contains the same documents you are referring to...

/Thomas


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] associative arrays

2001-08-13 Thread Thomas Wentzel

Uhhh sorry!

What I should have said is that... The associative array I wish to
return is to be an array element of  an associative array ;)
Meaning... I need the functionality of add_assoc_array but since
this function doesn't exist - I have to manipulate with the
zend_hash_xxx in order to get what I want - but I fail to connect
my constructed array with a name... 

Rasmus Lerdorf wrote:
> 
> > I was wondering if someone would be so nice as to post a code
> > snippet that returns an associative array... I'm writing an
> > extension and am only able to return an ordinary array...
> > Alternatively I would be very interested if someone could
> > point me to some documentation on the zend_hash_xxx functions
> 
> array_init(return_value);
> add_assoc_string(return_value, "string index", your_char_var, 1);
> add_assoc_double(return_value, "another one", your_long_var);
> 
> That's all.  Last arg on add_assoc_string() should be 1 if you need to
> make a copy of the string.  If the char * you are passing was allocated by
> you using emalloc() then don't make a copy.
> 
> You don't need any zend_hash_xxx functions to just return an associative
> array.
> 
> -Rasmus


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] associative arrays

2001-08-13 Thread Thomas Wentzel

Hi!

I was wondering if someone would be so nice as to post a code
snippet that returns an associative array... I'm writing an
extension and am only able to return an ordinary array...
Alternatively I would be very interested if someone could
point me to some documentation on the zend_hash_xxx functions

Thanx
  Thomas


-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Shared memory in extensions

2001-04-03 Thread Thomas Wentzel

Alexander!

You're absolutely right - that was exactly what I had done!
Hmm I guess that at his point I have noone fooled :) I'm totally new
to all this shm stuff and PHP extensions or rather the intrinsic details
of their 'inner' workings... I simply figured that if I allocate a
shared 
memory segment in PHP_MINIT_FINCTION then it should be destroyed in
PHP_MSHUTDOWN_FUNCTION. The error I did (I reckon) was to compile and 
replace the PHP-module before restarting apache. This way the new 
PHP_MSHUTDOWN_FUNCTION was called before PHP_MINIT_FUNCTION.

Where can I find a good explanation as to what the differences are
between
MINIT, RINIT, MSHUTDOWN and RSHUTDOWN?

hehe - how would one go about removing a shared memory segment
manually??

Well thank you all (Alexander in particular) for your answers they
helped alot

Thomas

Alexander Feldman wrote:
> 
> Hi Thomas,
> 
> I tried to create a shared segment of size 5 megabytes in the
> PHP_MINIT_FUNCTION and I had no problems.
> 
> The situation you described seems as you have called shmctl with IPC_RMID
> but not everyone had detached from the segment. Then you tried to use
> shmget and it failed - remove manually the shared memory segment and try
> again.
> 
> --
> Alexander Feldman
> Zend Technologies Ltd.
> phone: +972 3 6139665 ext. 113, fax: +972 3 6139671
> http://www.zend.com/
>

-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Shared memory in extensions

2001-04-02 Thread Thomas Wentzel

Hehe - sorry :)
Errno is set to 43 (Identifier removed (?))


The URL is:
http://www.humanfactor.com/cgi-bin/cgi-delegate/apache-ML/nh/1999/Jan/0467.html
- enjoy ;)

Thomas

Gavin Sherry wrote:
> 
> Thomas,
> 
> When shmget() fails, it sets errno. It would be useful if you could
> provide this information (see shmget(2)).
> 
> Also, do you have a URL got SHM across HTTP patch? This sounds like fun =)
> 
> Gavin
> 
> On Mon, 2 Apr 2001, Thomas Wentzel wrote:
> 
> > shmid=shmget((key_t)5346,sizeof(dbinfo),0666|IPC_CREAT);
> > which returns -1
> >
> > I just found something about a patch to apache, that should enable
> > som shared memory pools across http session! Is this something I
> > should use? It was a rather old patch (for apache 1.3.4/5)...
> >
> > Thanx
> >   Thomas
> >
> > Alexander Feldman wrote:
> > >
> > > On Mon, 2 Apr 2001, Thomas Wentzel wrote:
> > >
> > > > Linux!
> > > >
> > > > RedHat 6.2, Apache 1.3.14, PHP 4.0.4pl1
> > > >
> > > > I forgot to mention that because shmget fails and that it does so in
> > > > PHP_MINIT_FUNCTION, apache wil not start!
> > >
> > > With what parameters are you calling shmget? What is the errno after this
> > > call?
> > >
> >
> >
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Shared memory in extensions

2001-04-02 Thread Thomas Wentzel

shmid=shmget((key_t)5346,sizeof(dbinfo),0666|IPC_CREAT);
which returns -1

I just found something about a patch to apache, that should enable
som shared memory pools across http session! Is this something I 
should use? It was a rather old patch (for apache 1.3.4/5)...

Thanx
  Thomas

Alexander Feldman wrote:
> 
> On Mon, 2 Apr 2001, Thomas Wentzel wrote:
> 
> > Linux!
> >
> > RedHat 6.2, Apache 1.3.14, PHP 4.0.4pl1
> >
> > I forgot to mention that because shmget fails and that it does so in
> > PHP_MINIT_FUNCTION, apache wil not start!
> 
> With what parameters are you calling shmget? What is the errno after this
> call?
>

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Shared memory in extensions

2001-04-02 Thread Thomas Wentzel

Linux!

RedHat 6.2, Apache 1.3.14, PHP 4.0.4pl1

I forgot to mention that because shmget fails and that it does so in 
PHP_MINIT_FUNCTION, apache wil not start! 

Thomas

I compile the module _into_ PHP due to the 
Alexander Feldman wrote:
> 
> On Mon, 2 Apr 2001, Thomas Wentzel wrote:
> 
> > Hi
> >
> > Can anybody help me?
> >
> > I'm trying to allocate some shared memory in the PHP_MINIT_FUNCTION -
> > but it fails everytime during the shmget function.
> > I then did a little stand-alone C-prog, that did the same (tried to
> > allocate 3,5M of mem) and it works fine - everytime!
> > Is there some issued when using shared mem in php extensions?
> 
> On what platform is this?
> 
> >
> > BR
> >   Thomas
> 
> -- Alex
> 
> >
> > --
> > PHP Development Mailing List <http://www.php.net/>
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > To contact the list administrators, e-mail: [EMAIL PROTECTED]
> >
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Shared memory in extensions

2001-04-02 Thread Thomas Wentzel

Hi

Can anybody help me?

I'm trying to allocate some shared memory in the PHP_MINIT_FUNCTION - 
but it fails everytime during the shmget function.
I then did a little stand-alone C-prog, that did the same (tried to 
allocate 3,5M of mem) and it works fine - everytime!
Is there some issued when using shared mem in php extensions?

BR
  Thomas

-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Global variables in extensions

2001-03-30 Thread Thomas Wentzel

Thank you very much for your answer, Zeev. It really helped me
understand
(to some extend) what is going on.

Yes! I considered global variables to be more global than the case being
:(
Well I guess I should go for the shared memory approach then, but how?
Reading 
about shmget in the man-page revealed to me, that it is necessary to
store a key
that is used to reference the memory segment, but how is this done! If I
could 
store the key, then I would have no need to use shared memory. Obviously
I could
allocate a segment in MINIT and use this throughout, but then it
wouldn't be 
possible for me to alter the segment size - which sounds sort of bad...

Thomas

Zeev Suraski wrote:
> 
> Ah, no, it's not necessary.  I thought you were talking about a dynamic
> extension.
> 
> What exactly isn't working?  Is something that you're storing in a
> static/global variable not retained by the time of the next request?
> 
> A couple of things that are worth mentioning:
> - You can only set the values for global/static variables during the
> initial startup (minit).
> - Changes you make to these values afterwards will only be retained in the
> context of a single process, because the static/global variables are only
> global process-wide, whereas Apache has many simultaneous processes.
> 
> My guess is that you probably considered global variables to be more global
> than they really are (i.e., across processes).  In order to have variables
> that are shared among all Apache processes, you're going to have to use
> shared memory or some other type of persistent shared storage.
> 
> Zeev
> 
> At 13:16 30/3/2001, Thomas Wentzel wrote:
> >Hi Zeev,
> >
> >My extension is compiled _into_ php which is loaded as a module in
> >apache!
> >I'm not using the php.ini file at the moment - is it really necessary?
> >
> >Thomas
> >
> >Zeev Suraski wrote:
> > >
> > > How are you loading your extension?  If you're using dl(), forget about
> > > retaining any type of information in between requests...  You must use
> > > extension= in php.ini
> > >
> > > Zeev
> > >
> > > At 11:58 30/3/2001, Thomas Wentzel wrote:
> > > >Hi!
> > > >
> > > >I have a problem that is driving me crazy.
> > > >
> > > >I need to allocate some memory that will be available
> > > >throughout a session.
> > > >
> > > >Firstly a database connection is established, but at the
> > > >same time I read all relevant information about the db (records,
> > > >attributes, typedeclarations and such and such). This is a rather
> > > >lengthy process so I am trying to store these information in memory
> > > >for later retrieval.
> > > >This is the part, that doesn't work. Whenever a new page is loaded
> > > >the information is lost. I have tried using static (global)
> > > >variables, and I have tried the ZEND_BEGIN/END_MODULE_GLOBALS.
> > > >About the ZEND_BEGIN/END... approach: the std. skeleton defines these
> > > >macros:
> > > >#ifdef ZTS
> > > > #define RAIMAG(v) (raima_globals->v)
> > > > #define RAIMALS_FETCH() php_raima_globals
> > > >*raima_globals=ts_resource(raima_globals_id)
> > > >#else
> > > > #define RAIMAG(v) (raima_globals.v)
> > > > #define RAIMALS_FETCH()
> > > >#endif
> > > >
> > > >How do I utilize ZTS? Where is raima_globals_id defined?
> > > >I do set a variable in PHP_MINIT_FUNCTION that variable is always set!
> > > >But any other variables from the ZEND_BEGIN/END_MODULE_GLOBALS section
> > > >(phew)
> > > >that is set later do not remember their value??? Why is that?
> > > >
> > > >Thanks
> > > >   Thomas
> > > >
> > > >--
> > > >PHP Development Mailing List <http://www.php.net/>
> > > >To unsubscribe, e-mail: [EMAIL PROTECTED]
> > > >For additional commands, e-mail: [EMAIL PROTECTED]
> > > >To contact the list administrators, e-mail: [EMAIL PROTECTED]
> > >
> > > --
> > > Zeev Suraski <[EMAIL PROTECTED]>
> > > CTO &  co-founder, Zend Technologies Ltd. http://www.zend.com/
> 
> --
> Zeev Suraski <[EMAIL PROTECTED]>
> CTO &  co-founder, Zend Technologies Ltd. http://www.zend.com/

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[Fwd: Re: [PHP-DEV] Global variables in extensions]

2001-03-30 Thread Thomas Wentzel

missed the mailinglist :)

 Original Message 
Subject: Re: [PHP-DEV] Global variables in extensions
Date: Fri, 30 Mar 2001 13:16:36 +0200
From: Thomas Wentzel <[EMAIL PROTECTED]>
Organization: 2M Electronic A/S
To: Zeev Suraski <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>

Hi Zeev,

My extension is compiled _into_ php which is loaded as a module in
apache!
I'm not using the php.ini file at the moment - is it really necessary?

Thomas

Zeev Suraski wrote:
> 
> How are you loading your extension?  If you're using dl(), forget about
> retaining any type of information in between requests...  You must use
> extension= in php.ini
> 
> Zeev
> 
> At 11:58 30/3/2001, Thomas Wentzel wrote:
> >Hi!
> >
> >I have a problem that is driving me crazy.
> >
> >I need to allocate some memory that will be available
> >throughout a session.
> >
> >Firstly a database connection is established, but at the
> >same time I read all relevant information about the db (records,
> >attributes, typedeclarations and such and such). This is a rather
> >lengthy process so I am trying to store these information in memory
> >for later retrieval.
> >This is the part, that doesn't work. Whenever a new page is loaded
> >the information is lost. I have tried using static (global)
> >variables, and I have tried the ZEND_BEGIN/END_MODULE_GLOBALS.
> >About the ZEND_BEGIN/END... approach: the std. skeleton defines these
> >macros:
> >#ifdef ZTS
> > #define RAIMAG(v) (raima_globals->v)
> > #define RAIMALS_FETCH() php_raima_globals
> >*raima_globals=ts_resource(raima_globals_id)
> >#else
> > #define RAIMAG(v) (raima_globals.v)
> > #define RAIMALS_FETCH()
> >#endif
> >
> >How do I utilize ZTS? Where is raima_globals_id defined?
> >I do set a variable in PHP_MINIT_FUNCTION that variable is always set!
> >But any other variables from the ZEND_BEGIN/END_MODULE_GLOBALS section
> >(phew)
> >that is set later do not remember their value??? Why is that?
> >
> >Thanks
> >   Thomas
> >
> >--
> >PHP Development Mailing List <http://www.php.net/>
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >To contact the list administrators, e-mail: [EMAIL PROTECTED]
> 
> --
> Zeev Suraski <[EMAIL PROTECTED]>
> CTO &  co-founder, Zend Technologies Ltd. http://www.zend.com/

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Global variables in extensions

2001-03-30 Thread Thomas Wentzel

Hi!

I have a problem that is driving me crazy.

I need to allocate some memory that will be available
throughout a session.

Firstly a database connection is established, but at the
same time I read all relevant information about the db (records,
attributes, typedeclarations and such and such). This is a rather
lengthy process so I am trying to store these information in memory
for later retrieval.
This is the part, that doesn't work. Whenever a new page is loaded
the information is lost. I have tried using static (global) 
variables, and I have tried the ZEND_BEGIN/END_MODULE_GLOBALS. 
About the ZEND_BEGIN/END... approach: the std. skeleton defines these 
macros:
#ifdef ZTS
#define RAIMAG(v) (raima_globals->v)
#define RAIMALS_FETCH() php_raima_globals
*raima_globals=ts_resource(raima_globals_id)
#else
#define RAIMAG(v) (raima_globals.v)
#define RAIMALS_FETCH()
#endif

How do I utilize ZTS? Where is raima_globals_id defined?
I do set a variable in PHP_MINIT_FUNCTION that variable is always set!
But any other variables from the ZEND_BEGIN/END_MODULE_GLOBALS section
(phew)
that is set later do not remember their value??? Why is that?

Thanks
  Thomas

-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Leaking references

2001-03-29 Thread Thomas Wentzel

DUH!!!

I did a buildconf and then the errors disappeared...

Thomas Wentzel wrote:
> 
> Thank you very much, Wez!
> 
> Perhaps you can be so nice as to answer my next question also ;)
> Whenever I do a configure with --enable-debug I get close to
> a zillion errors when compiling (or linking rather) it seems that I get
> the following two errors for each function in my code:
> "multiple definition of `foobar'" and "first defined here"
> 
> Am I supposed to do something particular in order for debug to work???
> 
> Regards
>   Thomas
> 
> Wez Furlong wrote:
> >
> > On 2001-03-28 15:09:27, "Thomas Wentzel" <[EMAIL PROTECTED]> wrote:
> > > I do come up with the most stupid questions - sorry :)
> > > > Erhm all this talk about memory leaks - made me curious.
> > > > How do I go about getting the sort of output, that Wez are showing
> > > > below.
> >
> > Try
> >  ./configure --enable-debug
> >
> > and look at your httpd error log.
> >
> > If you have memory problems, most likely the error log is huge ;-)
> >
> > --Wez.
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Leaking references

2001-03-28 Thread Thomas Wentzel

Thank you very much, Wez! 

Perhaps you can be so nice as to answer my next question also ;)
Whenever I do a configure with --enable-debug I get close to
a zillion errors when compiling (or linking rather) it seems that I get
the following two errors for each function in my code:
"multiple definition of `foobar'" and "first defined here"

Am I supposed to do something particular in order for debug to work???

Regards
  Thomas





Wez Furlong wrote:
> 
> On 2001-03-28 15:09:27, "Thomas Wentzel" <[EMAIL PROTECTED]> wrote:
> > I do come up with the most stupid questions - sorry :)
> > > Erhm all this talk about memory leaks - made me curious.
> > > How do I go about getting the sort of output, that Wez are showing
> > > below.
> 
> Try
>  ./configure --enable-debug
> 
> and look at your httpd error log.
> 
> If you have memory problems, most likely the error log is huge ;-)
> 
> --Wez.

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Leaking references

2001-03-28 Thread Thomas Wentzel

I do come up with the most stupid questions - sorry :)


Thomas Wentzel wrote:
> 
> Erhm all this talk about memory leaks - made me curious.
> How do I go about getting the sort of output, that Wez are showing
> below.
> I suspect that the extension I'm writing on has some severe memory
> issues.
> These issues are occuring in the PHP script, that utilizes my extension.
> Every other reload (or so) it simply crashes in the middle of a larger
> block
> of 'pure' PHP code (nowhere near any reference to my extension).
> 
> Thanks for listening
>   Thomas
> 
> Wez Furlong wrote:
> > zend_hash.c(291) :  Freeing 0x0818E474 (37 bytes), script=leak.php
> > Last leak repeated 1 time
> > zend_hash.c(202) :  Freeing 0x08193D1C (20 bytes), script=leak.php
> > Last leak repeated 1 time
> > ./zend_execute.c(1848) :  Freeing 0x0818E414 (48 bytes), script=leak.php
> > zend_API.c(208) : Actual location (location was relayed)
> > Last leak repeated 1 time
> > ./zend_execute.c(1847) :  Freeing 0x08193F3C (12 bytes), script=leak.php
> > Last leak repeated 1 time
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] Leaking references

2001-03-28 Thread Thomas Wentzel

Erhm all this talk about memory leaks - made me curious.
How do I go about getting the sort of output, that Wez are showing
below.
I suspect that the extension I'm writing on has some severe memory
issues.
These issues are occuring in the PHP script, that utilizes my extension.
Every other reload (or so) it simply crashes in the middle of a larger
block 
of 'pure' PHP code (nowhere near any reference to my extension).

Thanks for listening
  Thomas

Wez Furlong wrote:
> zend_hash.c(291) :  Freeing 0x0818E474 (37 bytes), script=leak.php
> Last leak repeated 1 time
> zend_hash.c(202) :  Freeing 0x08193D1C (20 bytes), script=leak.php
> Last leak repeated 1 time
> ./zend_execute.c(1848) :  Freeing 0x0818E414 (48 bytes), script=leak.php
> zend_API.c(208) : Actual location (location was relayed)
> Last leak repeated 1 time
> ./zend_execute.c(1847) :  Freeing 0x08193F3C (12 bytes), script=leak.php
> Last leak repeated 1 time

-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Persistant connections...

2001-03-27 Thread Thomas Wentzel

Hi,

I'm hacking on a module that is communicating with an old 
flatfile db. When a connection to the db is made, all necessary 
information (such as record and field sizes/types)from the db are 
read. 

 If php-script A opens a connection to the db, and then loads a 
new php-script B - then the connection is automagically shut down.
I believe this is due to the fact, that I do the following:
PHP_MINIT_FUNCTION(raima)
{
// _d_closeall simply closes all open connections
le_raima=register_list_destructors(_d_closeall,NULL); 
return SUCCESS;
}
But how are these list destructors used? How should I avoid that my 
connection is closed _every_ time I load a new page? Is it simply a 
matter of placing some logic in _d_closeall, that only does the actual 
db-closing if appropriate? AND can I somehow differentiate between 
a page load and a browser termination? When to use zend_register_\
list_destructors_ex???

 How and where should I place my data - for them to be shared across 
the entrire session. At the moment I have declared some static variables 
in the beginning of the source file - is this OK or am I supposed to do 
it in a special PHP-style?

TIA
  Thomas

-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Returning multi-dimensional arrays from within PHP modules

2001-02-05 Thread Thomas Wentzel

Hi,

I were refered to this list...
I found an old entry in the dev archive, explaining that I could achieve
my goals, by "for each inner array you
allocate a zval*, initialize it, add data to it, and add it to the
return value."
But how exactly do I add a zval?
My guess is add_assoc_resource but where do the integer come from?
Is it the returnvalue from array_init(allocatedZvalP)???

TIA
  Thomas

-
Hi all,

I've been using array_init and add_assoc_xxx to return an array from
within my PHP module... But how would I go about returning the following
stucture

Array (Array (Name, Type, Size))

tia
  T.

-- 
PHP Development Mailing List 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP-DEV] [Fwd: Re: [PHP] Howto return multidimensional arrays from a PHP module]

2001-02-05 Thread Thomas Wentzel

Hmmm... Can anybody tell me why this mail ended up in this list and not
the devel list??


Thomas Wentzel wrote:
> 
> Hi,
> 
> I were refered to this list...
> I found an old entry in the dev archive, explaining that I could achieve
> my goals, by "for each inner array you
> allocate a zval*, initialize it, add data to it, and add it to the
> return value."
> But how exactly do I add a zval?
> My guess is add_assoc_resource but where do the integer come from?
> Is it the returnvalue from array_init(allocatedZvalP)???
> 
> TIA
>   Thomas
> 
>  Original Message 
> Subject: Re: [PHP] Howto return multidimensional arrays from a PHP
> module
> Date: Mon, 5 Feb 2001 12:13:29 -0000
> From: "Phil Driscoll" <[EMAIL PROTECTED]>
> To: "Thomas Wentzel" <[EMAIL PROTECTED]>, "PHP" <[EMAIL PROTECTED]>
> 
> >Thomas Wentzel wrote:
> >>
> >> Hi Sren,
> >>
> >> Thank you very much for your answer, but I'm afraid that it isn't that
> >> usefull to me... I don't have the luxury of using PHP as my PHP module
> >> is written in C!!
> 
> Repost your question to the php-dev list. That's where the people who
> know
> this stuff hang out. First, you might like to check the php dev archive
> as I
> think I remember this question coming up a number of times in the past.
> 
> Cheers
> --
> Phil Driscoll
> Dial Solutions
> +44 (0)113 294 5112
> http://www.dialsolutions.com
> http://www.dtonline.org
> 
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]
> 
> --
> PHP Development Mailing List <http://www.php.net/>
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] [Fwd: Re: [PHP] Howto return multidimensional arrays from a PHP module]

2001-02-05 Thread Thomas Wentzel

Hi,

I were refered to this list...
I found an old entry in the dev archive, explaining that I could achieve
my goals, by "for each inner array you
allocate a zval*, initialize it, add data to it, and add it to the
return value."
But how exactly do I add a zval?
My guess is add_assoc_resource but where do the integer come from?
Is it the returnvalue from array_init(allocatedZvalP)???

TIA
  Thomas

 Original Message 
Subject: Re: [PHP] Howto return multidimensional arrays from a PHP
module
Date: Mon, 5 Feb 2001 12:13:29 -
From: "Phil Driscoll" <[EMAIL PROTECTED]>
To: "Thomas Wentzel" <[EMAIL PROTECTED]>, "PHP" <[EMAIL PROTECTED]>

>Thomas Wentzel wrote:
>>
>> Hi Sren,
>>
>> Thank you very much for your answer, but I'm afraid that it isn't that
>> usefull to me... I don't have the luxury of using PHP as my PHP module
>> is written in C!!

Repost your question to the php-dev list. That's where the people who
know
this stuff hang out. First, you might like to check the php dev archive
as I
think I remember this question coming up a number of times in the past.

Cheers
--
Phil Driscoll
Dial Solutions
+44 (0)113 294 5112
http://www.dialsolutions.com
http://www.dtonline.org


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] [Fwd: Re: [PHP] Howto return multidimensional arrays from a PHP module]

2001-02-05 Thread Thomas Wentzel

Hi,

I were refered to this list...
I found an old entry in the dev archive, explaining that I could achieve
my goals, by "for each inner array you
allocate a zval*, initialize it, add data to it, and add it to the
return value."
But how exactly do I add a zval?
My guess is add_assoc_resource but where do the integer come from?
Is it the returnvalue from array_init(allocatedZvalP)???

TIA
  Thomas

 Original Message 
Subject: Re: [PHP] Howto return multidimensional arrays from a PHP
module
Date: Mon, 5 Feb 2001 12:13:29 -
From: "Phil Driscoll" <[EMAIL PROTECTED]>
To: "Thomas Wentzel" <[EMAIL PROTECTED]>, "PHP" <[EMAIL PROTECTED]>

>Thomas Wentzel wrote:
>>
>> Hi Sren,
>>
>> Thank you very much for your answer, but I'm afraid that it isn't that
>> usefull to me... I don't have the luxury of using PHP as my PHP module
>> is written in C!!

Repost your question to the php-dev list. That's where the people who
know
this stuff hang out. First, you might like to check the php dev archive
as I
think I remember this question coming up a number of times in the past.

Cheers
--
Phil Driscoll
Dial Solutions
+44 (0)113 294 5112
http://www.dialsolutions.com
http://www.dtonline.org


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]