Re: Update to mail() function help
| From: | Jani Taskinen | Date: | Fri, 23 May 2003 23:21:16 +0000 |
| Subject: | Re: Update to mail() function help | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-1958@lists.php.net to get a copy of this message | ||
Oh well, just thought about more general solution. :)
Someone might want to add some other headers too.
--Jani
On Fri, 23 May 2003, Rasmus Lerdorf wrote:
>That would require a different ini setting for each virtual server and
>thus could be a lot more work than just hacking the code.
>
>On Sat, 24 May 2003, Jani Taskinen wrote:
>
>>
>> Maybe a php.ini option would be best for this?
>> Like mail.extra_headers or something alike..?
>> ie. that would add the specified headers to every
>> mail sent with mail().
>>
>> --Jani
>>
>>
>> On Fri, 23 May 2003, Rasmus Lerdorf wrote:
>>
>> >To access $_SERVER['SERVER_NAME'] from C you would do:
>> >
>> >zend_hash_find(PG(http_globals)[TRACK_VARS_SERVER]->value.ht,
>> >"SERVER_NAME", sizeof("SERVER_NAME"), (void **) &server_name)==FAILURE)
>> >
>> >But, if variables_order doesn't include "S" it isn't going to be
>> >there.
>> >You are probably better off getting it directly from the server instead of
>> >from the PHP symbol table. You can call php_apache_getenv() directly, or
>> >to be more correct and portable to other SAPI's you would call
>> >sapi_module.getenv().
>> >
>> >-Rasmus
>> >
>> >
>> >On Fri, 23 May 2003, Patrick Gibson wrote:
>> >
>> >> I'd like modify the PHP mail() function to add the
>> >> $_SERVER['SERVER_NAME']
>> >> into the header if it's available. It would be equivalent to adding a line
>> >> into the headers argument from the PHP end that would be like:
>> >>
>> >> if ($_SERVER['SERVER_NAME'])
>> >> {
>> >> $headers .= '\nX-Originated-From: www.mywebsite.com';
>> >> }
>> >>
>> >> I see exactly in ext/standard/mail.c where I need to add this, but my
>> >> problem is I'm not sure how to gain access to the $_SERVER super global
>> >> array from the C API.
>> >>
>> >> Can anyone point me in the right direction? I don't see anything in the API
>> >> docs that explains this, nor can I think of any PHP function that does
>> >> something like this for a reference (except phpinfo(), but the code is
>> >> unclear to me).
>> >>
>> >> I run a hosting company, and if any of our customers abuses this function, I
>> >> want to be able to know from which website the mail originated. When there
>> >> are hundreds of virtual hosts, something like this would make it really
>> >> helpful at times.
>> >>
>> >> Thanks so much,
>> >>
>> >> Patrick
>> >>
>> >>
>> >>
>> >
>> >
>> >
>>
>>
>
>
>
--
<- For Sale! ->