ANNOUNCE: Embperl 2.0b9
pplication object. - Added -type => Integer, IPAddr, IPAddr_Net, FQDN_IPAddr, TimeHHMM, TimeHHMMSS, EMail and EMailRFC to Embperl::Form::Validate. - Fixed problem with [$var$] and select reported by Joshua Spoerri. - Embperl compiles and tests now correctly if mod_perl installed under Apache2 namespace. - Added tests for epform and subreq. - Added patch from David Hull, which let you specify the status-code when doing a redirect via %http_headers_out. - Fix SIGSEGV on sparc in cleanup. Patch from Angus Lees. - Apply patch from Angus Lees which avoids a lot of (harmless) compiler warnings. - %idat is now also populated for checkboxes and radiobuttons where no matching value in %fdat is found. This avoid duplicate submission of formdata when using [$ hidden $]. - fixed memory allocation problem that had occured when mod_perl was staticly linked into Apache. - removed old Embperl 1 test files from distribution - corrected initialization of ap_filter_rec structure which had lead to random segfaults when using the subreq parameter. ------ Gerald Richter ecos electronic communication services gmbh IT-Securitylösungen * dynamische Webapplikationen * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice: +49 6133 939-122 WWW:http://www.ecos.de/ Fax: +49 6133 939-333 -- | | ECOS BB-5000 Firewall- und IT-Security Appliance: www.bb-5000.info | +-
Re: [ANNOUNCE] Apache Hello World Benchmarks v1.02
> > > > Yes, Embperl per default caches a "compiled" version of the > > stylsheet in > > memory. > > > > Gerald > > > > P.S. There are also options to cache the result of the xslt > > transformation > > or any itermediate steps > > > > Oh - A way of making it even faster in the benchmarks? > Yes, that should be possible. I have to take a look at Joshs benchmark setting, after 2.0b9 is out Gerald -- Gerald Richter ecos electronic communication services gmbh IT-Securitylösungen * dynamische Webapplikationen * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice: +49 6133 939-122 WWW:http://www.ecos.de/ Fax: +49 6133 939-333 -- | | Besuchen Sie uns auf der CeBIT vom 12. - 19. März 2003 | Messe Hannover * Halle 17 * Stand F 36 | http://www.cebit.de/ | +-
Re: [ANNOUNCE] Apache Hello World Benchmarks v1.02
> > This differs from Embperl where the application layer itself handles > the XSLT rending, not the script/XML file: > > PerlSetEnv EMBPERL_RECIPE LibXSLT > PerlSetEnv EMBPERL_XSLTPROC libxslt > PerlSetEnv EMBPERL_XSLTSTYLESHEET $ROOT/hello.xsl > > So perhaps Embperl 2 is able to do some things like caching of style > sheets and the like internally that PHP doesn't do for one? > Yes, Embperl per default caches a "compiled" version of the stylsheet in memory. Gerald P.S. There are also options to cache the result of the xslt transformation or any itermediate steps ------ Gerald Richter ecos electronic communication services gmbh IT-Securitylösungen * dynamische Webapplikationen * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice: +49 6133 939-122 WWW:http://www.ecos.de/ Fax: +49 6133 939-333 -- | | Besuchen Sie uns auf der CeBIT vom 12. - 19. März 2003 | Messe Hannover * Halle 17 * Stand F 36 | http://www.cebit.de/ | +-
ANNOUNCE: Apache::SessionX 2.00b5
The URL ftp://ftp.dev.ecos.de/pub/perl/session/Apache-SessionX-2.00b5.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-SessionX-2.00b5.tar.gz size: 11981 bytes md5: d9bb7317e8ffed14ebdb276cd3b729b4 Apache::SessionX extents Apache::Session. It was initialy written to use Apache::Session from inside of Embperl, but is seems to be usefull outside of Embperl as well, so here is it as standalone module. Apache::Session is a persistence framework which is particularly useful for tracking session data between httpd requests. Apache::Session is designed to work with Apache and mod_perl, but it should work under CGI and other web servers, and it also works outside of a web server alltogether. Addtionaly to Apache::Session, Apache::SessionX provides the following possibilites: - Configuration: Makefile.PL checks which componemnts are installed on the system and interactivly builds a set of configuration, including a default one. This configurations are saved and can be used by name later on. The default configuration is used, if no parameters are given to Apache::SessionX. This simplifies the configuration and usage. - Lazy operation: Apache::SessionX supports lazy operation, that means that the actual data access only takes place if the session data is needed, so you are able to setup the session object, without worrying about performance in case you don't access the session data. - Specifing the ID: Apache::SessionX can use a given ID instead of creating it's own one. You can also give an string which is used to generate the ID - Genrate unique ID: Apache::SessionX is able to save the session with an new ID every time data is modified. This make it possible to keep an history. - Addtionaly methods are provided to get the ID, the inital ID, the modified status and to close a session, without destroying the session object itself. Additional features like session expiration are partial implemented. Enjoy Gerald Changes since 2.00b3: - make test now works without Timer::HiRes installed - included patch from Robert for iteration over all sessions - created new class Apache::SessionX::Manager, which is used to performs actions on multiple sessions. (first, next, count) (Only File Store currently supports this methods). - Use Digest::MD5 instead of MD5 -- Gerald Richter ecos electronic communication services gmbh IT-Securitylösungen * dynamische Webapplikationen * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice: +49 6133 939-122 WWW:http://www.ecos.de/ Fax: +49 6133 939-333 -- | | Besuchen Sie uns auf der CeBIT vom 12. - 19. März 2003 | Messe Hannover * Halle 17 * Stand F 36 | http://www.cebit.de/ | +-
Re: mp2: any recommendations for template systems yet?
> > > Without wishing to start anything religious ... any suggestions > > for a template system that handles sessions? > > Apache::ASP, Embperl, and Mason all have session support integrated > now. I can't vouch for their stability on mp2 yet though. > Embperl works fine with Apache 2 in prefork mode (the default). A threaded Apache 2 isn't supported yet, but should come soon Gerald ------ Gerald Richter ecos electronic communication services gmbh IT-Securitylösungen * dynamische Webapplikationen * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice: +49 6133 939-122 WWW:http://www.ecos.de/ Fax: +49 6133 939-333 -- | | Besuchen Sie uns auf der CeBIT vom 12. - 19. März 2003 | Messe Hannover * Halle 17 * Stand F 36 | http://www.cebit.de/ | +-
Announce: HTML-Embperl 1.3.6
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/HTML-Embperl-1.3.6.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/HTML-Embperl-1.3.6.tar.gz size: 357623 bytes md5: b360a0f9ba5d5e35f6426c81dd91933d This is a maintaince release which fixes some problems with Perl 5.8.0. Note: No further developing of 1.3.x is done. All new features are added to Embperl 2.0 Enjoy Gerald Changes since 1.3.4: 1.3.6 (RELEASE) 22. Jan 2003 - Fixed unicode problems in make test with Perl 5.8.0. With support from Robert. - Fixed warning about missing CLOSE method with Perl 5.8.0 Reported by Rajesh Kumar Mallah. 1.3.5 (RELEASE) 23. Dec 2002 - Runs now with Perl 5.8.0. Thanks to Angus Lees who backported the 5.8.0 patches from 2.0. - Fixed Path search problem. Reported by Gavin Carr. -- Gerald Richter ecos electronic communication services gmbh IT-Securitylösungen * dynamische Webapplikationen * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice: +49 6133 939-122 WWW:http://www.ecos.de/ Fax: +49 6133 939-333 -- | | Besuchen Sie uns auf der CeBIT vom 12. - 19. März 2003 | Messe Hannover * Halle 11 * Stand D42/18 | http://www.cebit.de/ | +-
Re: problems with apache modperl
Hi, there seems to be a problem with Embperl when you do the configtest (the graceful does a configtest first). I have seem something like this on windows, when you install Apache as a service, but no on unix yet. The graceful restart would work, without the configtest before. Which version of Embperl you are running? If it is an 1.3.x version, please make sure you upgrade to 1.3.5 before we continue Gerald -Gerald Richter ecos electronic communication services gmbhInternetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. MainzE-Mail: [EMAIL PROTECTED] Voice: +49 6133 925131WWW: http://www.ecos.de Fax: +49 6133 925152- - Original Message - From: HeRnAn DeL bOcA To: [EMAIL PROTECTED] Sent: Thursday, January 16, 2003 9:19 PM Subject: problems with apache modperl I have apache 1.3.27 and perl 5.8 and i have the mod-perl installed in debian box. but everytime i want to shut down the apache server with the command "apachectl gracefull" i get this error : /usr/sbin/apachectl: line 171: 21571 Segmentation fault $HTTPD -t >/dev/null 2>&1/usr/sbin/apachectl graceful: configuration broken, ignoring restart /usr/sbin/apachectl graceful: (run 'apachectl configtest' for details) when i run "apachectl configtest" i get this error: [21581]SES: Embperl Session management enabled (>= 1.50)Syntax OK/usr/sbin/apachectl: line 171: 21581 Segmentation fault $HTTPD -t please anybody who can help me with this error... thanks
Re: ANNOUNCE: Apache::AuthenNTLM 0.23
> I installed it on 29. Nov. and have to say that it works fine. No more > problems with POST requests. > The only issue I still have are the occasional "hangs", when the web > server doesn't respond for several tens of seconds. > Could you try to use a bdc instead of the pdc. Maybe your pdc is to high loaded Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache doesn't load anymore modules after mod_perl.so
> it is OK again with 1.99-08:-) > Great news! I was just about to try to track it down. Thanks for the feedback from you both Gerald
ANNOUNCE: Apache::AuthenNTLM 0.23
The URL ftp://ftp.dev.ecos.de/pub/perl/ntlm/Apache-AuthenNTLM-0.23.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-AuthenNTLM-0.23.tar.gz size: 49682 bytes md5: 6a0e59d24b23737b2902e6cd43aceb77 This version fixes the problem with POST request. Thanks to the people who send me logfiles and patches. Enjoy Gerald Changes since 0.21: 0.23 12. Nov 2002 - Fixed possible lockup with POST data. Patch from Gerald Combs. 0.22 11. Nov 2002 - Return FORBIDDEN (instead of SERVER_ERROR) when no PDC is configured for a given domain - Compiles now correctly with Perl 5.005 - Fixed problem with POST data, based on a patch from Gerald Combs. - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM Authentication patch
> > I am also interested in this patch, as we encounter lots of problems with > some POSTed forms over here. I just uploaded a new version with a fix to CPAN: The URL ftp://ftp.dev.ecos.de/pub/perl/ntlm/Apache-AuthenNTLM-0.23.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-AuthenNTLM-0.23.tar.gz size: 49682 bytes md5: 6a0e59d24b23737b2902e6cd43aceb77 > > Gerald, was the logfile I sent you helpful? > Yes, thanks Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Suspected Apache::AuthenNTLM Bug
> > With ColdFusion you can call the same page eg the line_main2.cfm can be > called from the line_main2.cfm with different parameters. Unfortunately > the client PC does not seem to pass the NTLM/Basic Authorization Header > the second time the page is called. > Maybe this is handled via a subrequest. To test this I send you the newest version. Please install it and set PerlSetVar ntlmdebug 2 run your request and send me the output from the httpd error log Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM Authentication patch
> We recently installed AuthenNTLM where I work, and ran into the POST > problems described in the thread at > > http://marc.theaimsgroup.com/?t=10317736546&r=1&w=2 > > After looking through a couple of network traces I think I've found the > problem. It appears that after IE authenticates via NTLM, it sends type 1 > messages for subsequent requests during a keepalive session. This is fine > and dandy unless you're sending a POST request - when it sends the type 1 > message, it also sends a "Content-length: 0", and doesn't append the POST > data. Since the browser has successfully authenticated itself earlier in > the keepalive session, AuthenNTLM validates the request and a POST with no > accompanying POST data gets passed to the server. > Yes, I have seen the same from traces people have send me, but could not reproduce it here (my IE always sends the POST data) I have modified your patch to handle both situations and to have the old behaviour in case of GET requests (for performance reasons) I send you the updated version per private mail, please give it a try if it still works correct for you and let me know. I will release it to CPAN as soon as somebody who had had the problem reports me that the new version solves it. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Novice - Problem with data encoding
> Thats what is wierd. I don't do any escaping. I think it might be embperl > doing the escaping because if I do a print of the XML doc string it has no > escaping. If I put the string between [+ $content +] then it gets escaped. > Yes, Embperl escapes your output per default, you can turn it off by using $escmode e.g. [+ do { local $escmode = 0 ; $content } +] Gerald P.S. The do { } is only necessary in Embperl 2.0 ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Antwort: Re: [Apache::AuthenNTLM] Performance Probs
>As soon as I can reproduce it I'll extract the relevant part of the >err_log file and post it. Ok, I looking forward to it... >Another problem I experience since the switch to Apache::AuthenNTLM is >with POST-Forms. Some of them simply don't pass their parameters to the >mod_perl-Script. Except when I restart the webserver before submitting the >form. Any ideas on this? This is a bug (not sure if it's in AuthenNTLM or IE). It does only occurs on some clients, while other seems to work. I currently working on it to fix it. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: [Apache::AuthenNTLM] Performance Probs
Hello, > > I recently installed Apache::AuthenNTLM 0.21 on a Solaris 8 box running > Apache 1.3.26 with mod_perl. The trouble is now that the response times > are sometimes very slow, up to several tens of seconds. They are faster > with non-NTLM-browsers like Mozilla, in this case it's only the first > request that's painfully slow. The subsequent ones are ok. > > Has someone an idea how I can improve the performance on this? > Looks like that it gets slow when the AuthenNTLM needs to ask the windows domain controller if the user/password is ok. That could either be some dns lookup problems or network or windows performance problems. Can you resolve the names you use on the solaris box? e.g. when you enter nslookup SXPDC nslookup SXBDC how long does it take? The other thing is you have configurated > PerlSetVar defaultdomain eeu > PerlSetVar fallbackdomain eeu but no definition for domain eeu, you shoudl add something like PerlAddVar ntdomain "eeu SXPDC SXBDC" If this still doesn't helps, set PerlSetVar ntlmdebug 1 and send me the httpd error log of a slow request Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache Hello World Benchmarks Updated
> > FYI, I reposted the benchmarks without the MaxRequestsPerChild 100 set > for HTML::Mason & Template Toolkit, as it was only Embperl 2.x that > needed it. > Embperl 2.0b8 has still some real memory leaks. That's why it called beta. Of course they will be fixed before the final release of 2.0. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: problems with sessions and upgrading
> > 1) the sessions keys for the new sessions are twice as long as the > old ones. generally, this is a good thing, but i am concerned that > the old session data will not get read when the cookie is submitted. > will the old sessions get read and reused, read and new ones created, > totally ignored? > As far as I know the Apache::Session code this should work, because Apache::Session only validates that the key contains of numbers and letters, but doesn't checks the length. Anyway you should carefully verify that this is really true, to be sure not to loose your data Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: problems with sessions and upgrading
> OLD STUFF: redhat 5.2, 2.0.36 kernel, 1.3.6 apache, 1.21 mod_perl, > perl 5.005_02, apache session 1.04 and a storable of 0.63, embperl 1.2.b10, > file system sessions and locking data. > > NEW STUFF: redhat 5.2, 2.0.36 kernel, 1.3.26 apache, 1.27 mod_perl, > perl 5.6.1, apache session 1.54, apache sessionX 2.00b3, storable of > 2.05, embperl 1.3.4, file system sessions and locking data.. >... > > yields the following error message: > > Storable binary image v56.115 more recent than I am (v2.5) at blib/lib/Storable.pm > (autosplit into blib/lib/auto/Storable/thaw.al) line 364, chunk 1, at -e line 1 > Did you try to install the old storable into the new Perl? If this works you could convert it to some other format (e.g. Data::Dumper), install the new storeable and put the session data back. Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: APache-ImageMagick 2.0b7
The URL ftp://ftp.dev.ecos.de/pub/perl/image/Apache-ImageMagick-2.0b7.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-ImageMagick-2.0b7.tar.gz size: 25457 bytes md5: 909cf4e83938de530d55635b202cc040 This release solves the problem with newer version of ImageMagick. Apache::ImageMagick - Convert and manipulate images on the fly This module uses the Image::Magick library to process or create an image on the fly. It is able to convert the source image to any type you request that is supported by Image::Magick (e.g. TIFF, PPM, PGM, PPB, GIF, JPEG and more). Additionaly you can specify (multiple) image manipulation filters in the additional path info and format options in the query string. Apache::ImageMagick caches the result image so multiple requested with the same parameters only needs one computation. To do more sophisticated manipulation, Apache::ImageMagick can run a script that does the image manipulation/creation. Last but not least Apache::ImageMagick comes with a proxy module, that can be linked into a non mod_perl frontend proxy server and which will delivers cached images which highest possible speed. Changes since 2.0b5: 2.0b7 28. Sep 2002 - Updated the list of allowable attribute to write method call, so you don't get and unknow attribute error anymore. - Added AIMCheckMTime which, when set, cause Apache::ImageMagick to compare the modification time of the source and the cached image and recompute the result if the source has changed. - Added AIMDisableSearch to disable auto conversion of image formats - Directory Requests are ignored now, so they can be handled by Apache as usual. - Add example CGI script in scripts/aimcgi.pl - Start with an test suite. You may run it with perl tst/test.pl but it may fail on the test which involves fonts, unless you same the same fonts as on my test machine. 2.0b6 28. Feb 2002 - ImageMagick warnings are only logged, but image is still returned - Add CGI::ImageMagick which is a fake Apache request and allows to use Apache::ImageMagick as CGI or offline - Fix some copy & paste errors, which causes warnings - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM module and POST
RE: NTLM moduleHi, I just tried AuthenNTLM and POST and it works for me. I would like to be able to reproduce the problem here to create the right fix. I am using IE 5.5SP2. Does the POST problem occurs always or only sometime or only with some browsers or OSs? Gerald P.S. Adding some kind of Cookie Based Auth to save the way to the smb server for every new connection might make sense, but first I like to get the POST working without haveing to close the keepAlive connection. - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM module
RE: NTLM module>I am not sure if you have resolved this issue. The POST issuse is still on my todo list > I have had the same issue with our system where post data would dissappear. > I ended up creating a Cookie add on > module for Apache::AuthenNTLM that > would write a cookie once authenticated and use that before re-authenticating them. > This allowed me to lower the keepalive timeout setting and has almost completely > eliminated this loss of data. Since it works with IIS, there should be an offical way to do it. I have to investigate it. > I created it for a semi friendly environment so the security is somewhat lacking. That's the reason why I didn't included your patch so far in AuthenNTLM, but I have to go over it more in detail and will send you an feedback then. Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: Apache-AuthenNTLM 0.21
The URL ftp://ftp.dev.ecos.de/pub/perl/ntlm/Apache-AuthenNTLM-0.21.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-AuthenNTLM-0.21.tar.gz size: 49239 bytes md5: 292ec3e15bdb8c407b2b45704a147b09 This release mainly fixes bugs in the communication with the smb server. The purpose of this module is to perform a user authentication via Mircosofts NTLM protocol. This protocol is supported by all versions of the Internet Explorer and is mainly usefull for intranets. Depending on your preferences setting IE will supply your windows logon credentials to the web server when the server asks for NTLM authentication. This saves the user to type in his/her password again. To support users that aren't using Internet Explorer, Apache::AuthenNTLM can also perform basic authentication depending on it's configuration. Enjoy Gerald Changes since 0.15: 0.21 03. Sept 2002 - Fixed bug that had cut nonce on null byte, which cause smb auth to fail randomly 0.20 27. Aug 2002 - Directly close connection to smb server after validation 0.19 26. Aug 2002 - Fixed in smbval c library to allow multiple connections at the same time (i.e. set VcNumber to 1 instead of 0) - Rewored serialziation code. It now makes sure that the whole request to the smb server is serialzied. - Added semtimeout directive to avoid endless locks. - Debug messages cleanup. Now can set ntlmdebug to 1 or 2 to get less/more verbose infomations. 0.18 23. Aug 2002 - Update smbval library - Fixed problem with guest access. Before 0.18 smbval lib would logon any user if the domain contains a guest account. Patch from Eric Devolder. - Fixed problem that smbval lib cannot handle two requests at the same time. I don't know if this is a general problem of the smb protocol, but after doing a lot of research the only solution I found is to serialzie all requests to the server. See also PerlSetVar ntlmsemkey. - Added fallbackdomain which is used when the domain the user supplied is not configured. Patch from David B. Pasirstein. - Fixed missing headers for Basic Auth. Patch from David B. Pasirstein. - Make username always lowercase in connection record, to avoid problems when comparing user name (e.g. in q require directive) 0.17 19. Apr 2002 - fix bug with ntlmauthoritative off - fix compile problem on FreeBSD reported by Ryan Parr. 0.16 14. Apr 2002 - Return DECLINE to pass request to next authentication handler in case ntlmauthoritative is not set and a communication error with the Domain Controller has occured. - Return DECLINE to pass request to next authentication handler in case ntlmauthoritative is not set and we have credentials for another authorization method given from the browser. - Log the connection header in debug mode to see if it's a keep alive request. ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM module
>When we go to several httpd process, it appears that the response to one >request from a browser which may be made up of many files that need to >be sent back, these requests can be handled by any of the http processes >(which is ok by itself ) but when this occurs, a password request(and >perhaps an SMB query) is made for each of the httpd process. Exactly one SMB query for each httpd process per KeepAlive Connection (which can serve many requests) > The httpd >processes appear to operate independently of each other, unless the >browser sends all its requests down the 1 tcp channel. Yes, that's true. >I have started to add to the code to log authentications to disc, so >that each httpd process can also reference this disc file to verify if >it has authenticated a user beforehand from another process. I remember there is a module called Apache::AuthenCache (or similar). I nvere have used it, but it does similar things. Maybe it would be usefull for you. >I hope I am going about this the right way.. As far as I can see caching works only if you using Basic Authentication, for NTLM authetication (i.e. what IE does when it authenticates with currented logged in user automaticly) can not be cached. >My more immediate problem is that I am currently losing the contents of >posted variables in a request packet whenever I use the AuthenNTLM >module, I have heared of a similiar problem, but I need to investigate it more, before I can say anything. Gerald P.S. A new release of Apache::AuthenNTLM will be soon available --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: DBI makes apache fail in perl58.dll
> > thanks for preceeding answer. I have two others : > > 1/ is it going to be fixed in a future release of DBI ? I am sure Tim will fix it. > 2/ if I don't want to trace DBI can I ignore the trace file in children > processes created by modperl ? > Yes you can ignore it Gerald
Re: NTLM module
>All works fine for IE and Mozilla browsers but when I use Netscape, I am >repeatedly promted for passwords. If I enter my password about 3 to 6 >times I will eventually get the full page . If I enter password once, ( >and cancel for any further password prompts ) I get only bit of the >expected page. Maybe the requested files are in different directories? Normaly the browser will only send back the username/password to the same a or child directory. >The other aspect I can not understand is that when the perl NTLM module >is running, it will often exit from sub's other than the handler sub. ie >the handler sub is always called first which calls other sub's but >whilst executing these other sub''s , it appears that something seems to >cut processing short & passes control back to apache - the perl code >never gets a chance to return to the handler module & exit code with a >'return xx'. Apache has a timeout, so maybe you hit that and Apache itself kill your handler >The other error I get is that the username/password is passed ok from >the SMB server verification phase, but then in subsequent calls to the >SMB server, the username/password fails - this occurs during the one >entry of username/password but the SMB server is contacted several times >for verification ( I also check the username & password in the script >before thay are submitted to the SMB server so I know they are correct.) >Would this be because of timeout in the SMB to respond. Somebodyelese also reported this and I currently debugging it. It maybe releated to some problems of the underlying C library. I let you know when it is fixed. >I would also expect the SMB server to only need to referred to once, but >the perl module is calling the SMB module 3 times during the one >username/password entry. Yes, as I said before it's a challange response cycle is taking place, which takes 3 steps Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM module
>when i have Authtype ntlm,basic in httpd.conf and I attempt to use a >username/password that is in htpasswd file I will not be able to be >authenticated & I receive the following error message in >/var/log/http/error.log > >[Thu Aug 15 15:28:53 2002] [crit] [client 131.242.91.200] configuration >error: couldn't check user. No user file?: / > >However when I use Authtype basic in httpd.conf & follow same process I >do not get the above error message in log & I can get authenticated & >bring up the web page. That's because Apache's basic auth handler checks for "AuthType Basic". If AuthType is anythingelse then basic, it doesn't do anything. This could be fixed for basic authentication by letting Apache::AuthenNTLM use another configuration directive instead of AuthType, so you can set AuthType to Basic, but it won't not work for NTLM authentication, because of what I wrote in my previous mails, that there is no password available on the server side to compare against. If it doesn't work with NTLM auth, there is no need to fix it, because you are using Apache::AuthNTLM to get NTLM authentication. If you really only want basic auth and verify your passwords against different backends, like a windows server, you really should use Peters module. If you want NTLM auth and what not only to verify the passwords against a windows server, you have to extent APache::AutheNTLM to handle this, like I wrote in my previous emails. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: What is NTLM? (was: NTLM module)
> > Am I totally wrong, or the plain and painful answer is > > that "NTLM is only supported on Win32 boxes"? I think > > I read somewhere that, because the module relies the > > Win32 API, it doesn't run on other systems. It even > > said something like "...whoever wants to grab some > > Samba code and port the module to *nix, please do...". > > > > Again, this is just "something I guess I think I read > > somewhere", so take it with a grain of salt. Apache::AuthenNTLM runs only on Unix and it uses Authen::smb to verify passwords against a windows nt/2000 machine. On the client side NTLM is only supported by Mircosoft Internet Explorer. The main reason why you want to use it, is when you haveing an intranet Apache server on Unix and most/all of your clients use MSIE on Windows as browser. In this case MSIE will autheticate via NTLM automaticly as the current logged on user, when a server requests NTLM authentication. So the main reason to use it, is that in this case the users don't have to type in there passwords again. > > I doubt that NTLM does not need any password. Logically, there must be a way > to set up the initial trustful connection between two machines. If not > password, what will that be ? Or something like Digital Authentication ? > >From the README: The NTLM protocol performs a challenge/response to exchange a random number (nonce) and get back a md4 hash, which is build form the users password and the nonce. This makes sure that no cleartext password goes over the wire, so it's more secure than basic authentication, which doesn't mean it's a real secure authentication scheme. Some information about NTLM can be found at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/security/nt lmssp_0k19.asp http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcsample98/ samp/VC98/sdk/winbase/security/winnt/httpauth/httpauth.asp More detailed implementation details are available from http://www.opengroup.org/comsource/techref2/NCH1222X.HTM http://www.innovation.ch/java/ntlm.html A lot of ideas and information are taken from the similar Apache module mod_ntlm, which can be found at http://sourceforge.net/projects/modntlm/ Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: NTLM module
> The username/password pair is sent only once to the issuer machine and the > follow-up authentications are performed using a self-certified, > time-limited, hash. In fact, it is based on access-control, having nothing > to do with Basic Authentication. This is discussed in detail in the Eagle > book. I am not sure if NTLM is even better but for most applications, it is > pretty secure. > NTLM is a bit more secure, but also this is not the point here. NTLM auth doesn't require you to enter your password at all. I don't argue that NTLM is better, it just fits better in some intranet situations, because the user doesn't have to type in the username/password. It's seems that I was not clear enough. The only thing I say is that under the precondition you want to use NTLM client authetication, you can't use the way your module verifies the password. Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - > Peter > > - Original Message - > From: "Gerald Richter" <[EMAIL PROTECTED]> > To: "Peter Bi" <[EMAIL PROTECTED]>; "Kaye-Smith Adam" > <[EMAIL PROTECTED]> > Cc: <[EMAIL PROTECTED]> > Sent: Tuesday, August 13, 2002 12:29 PM > Subject: Re: NTLM module > > > > > > > > if you check the source of the Smb implemenation of the module, you > would > > > see that it performs basically the same function as NTLM. I agree with > you > > > that it does not fit the Microsoft definition of NTLM, so it is not a > NTLM > > > implementation. If ones purpose is to pass the protection by providing a > > > valid username/password pair in a NT domain, then one does not have to > > > follow that definition and the current Smb implementation is one of the > > > possible solutions. > > > > > > > The point is not how the password is passed to the nt server, the point is > > how the browser and the web server exchange the credenticals. With basic > > auth and with your module the user enters a username and a password and > you > > use different backends to verify this. With NTLM authentication the > Internet > > Exploerer and the Web server uses a challange-response procdure to > exchange > > credenticals (and IE does this without asking the user, so you get logged > on > > with your windows username, which safes the user some extra typing). They > > never send the password over the wire, so you don't have a password to > > send/verify to your backend. > > > > What you talking about is the verification of the password between the web > > server and the nt domain controller, thats something different. > > > > Gerald > > > > > > > > > > Peter > > > > > > - Original Message - > > > From: "Gerald Richter" <[EMAIL PROTECTED]> > > > To: "Peter Bi" <[EMAIL PROTECTED]>; "Kaye-Smith Adam" > > > <[EMAIL PROTECTED]> > > > Cc: <[EMAIL PROTECTED]> > > > Sent: Tuesday, August 13, 2002 12:53 AM > > > Subject: Re: NTLM module > > > > > > > > > > > > > > > > > > > You may check Apache::Access module at http://modperl.home.att.net > in > > > > which > > > > > I tried to provide a general solution to several popular > > authentication > > > > > issuers such as SMB, LDAP, IMAP, NIS, FTP, LWP and DBI etc. > > > > > > > > > > > > > I think you missed the point (or I missunderstood your module): The > > > problem > > > > is not doing the authentication against whatever, but doing NTLM > > > > authetication. With NTLM auth you don't get a password from the > client, > > so > > > > how would compare the password that you don't have against "SMB, LDAP, > > > IMAP, > > > > NIS, FTP, LWP and DBI etc." ? > > > > > > > > The only solution is to reimplement the challage/response that NTLM > > does. > > > > (The module Authen::Perl::NTLM maybe helpfull here). To do this you > need > > > > either the password in clear text to compute the nt password hash (a > > sort > > > of
Re: NTLM module
> > if you check the source of the Smb implemenation of the module, you would > see that it performs basically the same function as NTLM. I agree with you > that it does not fit the Microsoft definition of NTLM, so it is not a NTLM > implementation. If ones purpose is to pass the protection by providing a > valid username/password pair in a NT domain, then one does not have to > follow that definition and the current Smb implementation is one of the > possible solutions. > The point is not how the password is passed to the nt server, the point is how the browser and the web server exchange the credenticals. With basic auth and with your module the user enters a username and a password and you use different backends to verify this. With NTLM authentication the Internet Exploerer and the Web server uses a challange-response procdure to exchange credenticals (and IE does this without asking the user, so you get logged on with your windows username, which safes the user some extra typing). They never send the password over the wire, so you don't have a password to send/verify to your backend. What you talking about is the verification of the password between the web server and the nt domain controller, thats something different. Gerald > > Peter > > - Original Message - > From: "Gerald Richter" <[EMAIL PROTECTED]> > To: "Peter Bi" <[EMAIL PROTECTED]>; "Kaye-Smith Adam" > <[EMAIL PROTECTED]> > Cc: <[EMAIL PROTECTED]> > Sent: Tuesday, August 13, 2002 12:53 AM > Subject: Re: NTLM module > > > > > > > > > You may check Apache::Access module at http://modperl.home.att.net in > > which > > > I tried to provide a general solution to several popular authentication > > > issuers such as SMB, LDAP, IMAP, NIS, FTP, LWP and DBI etc. > > > > > > > I think you missed the point (or I missunderstood your module): The > problem > > is not doing the authentication against whatever, but doing NTLM > > authetication. With NTLM auth you don't get a password from the client, so > > how would compare the password that you don't have against "SMB, LDAP, > IMAP, > > NIS, FTP, LWP and DBI etc." ? > > > > The only solution is to reimplement the challage/response that NTLM does. > > (The module Authen::Perl::NTLM maybe helpfull here). To do this you need > > either the password in clear text to compute the nt password hash (a sort > of > > md4 hash) or the precomputed nt password hash. You won't have this with > > LDAP, IMAP, NIS, FTP, LWP and DBI etc > > > > Gerald > > > > - > > Gerald Richterecos electronic communication services gmbh > > Internetconnect * Webserver/-design/-datenbanken * Consulting > > > > Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz > > E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 > > WWW:http://www.ecos.de Fax: +49 6133 925152 > > - > > > > > > > Cheers. > > > > > > > > > Peter Bi > > > > > > - Original Message - > > > From: "Gerald Richter" <[EMAIL PROTECTED]> > > > To: "Kaye-Smith Adam" <[EMAIL PROTECTED]> > > > Cc: <[EMAIL PROTECTED]> > > > Sent: Monday, August 12, 2002 9:12 PM > > > Subject: Re: NTLM module > > > > > > > > > > > > > > >According to the documentation, if you set NTMLauthoritative to off, > > > > >then if NTLM authorization fails, then it should pass it on to the > > lower > > > > >level modules. > > > > > > > > Yes, that's true and it works like you describe it. The point that you > > are > > > > missing is (and that I have tried to show in my last mail), that > during > > > NTLM > > > > authentication there is no password! NTLM never passes the password to > > the > > > > server, so also the control gets passed to the lower level module, > this > > > > lower level module must be able to handle NTLM. The default Apache > auth > > > > handler isn't able to do so. It expects a password, which it doesn't > > gets > > > > because the client never has send it. > > > > > > > > Hope it's a little bit more clear now > > > > > > > > Gerald > > > > > > > > -
Re: NTLM module
> You may check Apache::Access module at http://modperl.home.att.net in which > I tried to provide a general solution to several popular authentication > issuers such as SMB, LDAP, IMAP, NIS, FTP, LWP and DBI etc. > I think you missed the point (or I missunderstood your module): The problem is not doing the authentication against whatever, but doing NTLM authetication. With NTLM auth you don't get a password from the client, so how would compare the password that you don't have against "SMB, LDAP, IMAP, NIS, FTP, LWP and DBI etc." ? The only solution is to reimplement the challage/response that NTLM does. (The module Authen::Perl::NTLM maybe helpfull here). To do this you need either the password in clear text to compute the nt password hash (a sort of md4 hash) or the precomputed nt password hash. You won't have this with LDAP, IMAP, NIS, FTP, LWP and DBI etc Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - > Cheers. > > > Peter Bi > > - Original Message - > From: "Gerald Richter" <[EMAIL PROTECTED]> > To: "Kaye-Smith Adam" <[EMAIL PROTECTED]> > Cc: <[EMAIL PROTECTED]> > Sent: Monday, August 12, 2002 9:12 PM > Subject: Re: NTLM module > > > > > > >According to the documentation, if you set NTMLauthoritative to off, > > >then if NTLM authorization fails, then it should pass it on to the lower > > >level modules. > > > > Yes, that's true and it works like you describe it. The point that you are > > missing is (and that I have tried to show in my last mail), that during > NTLM > > authentication there is no password! NTLM never passes the password to the > > server, so also the control gets passed to the lower level module, this > > lower level module must be able to handle NTLM. The default Apache auth > > handler isn't able to do so. It expects a password, which it doesn't gets > > because the client never has send it. > > > > Hope it's a little bit more clear now > > > > Gerald > > > > - > > Gerald Richterecos electronic communication services gmbh > > Internetconnect * Webserver/-design/-datenbanken * Consulting > > > > Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz > > E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 > > WWW:http://www.ecos.de Fax: +49 6133 925152 > > - > > > > > > > > I have cut out the below section from the doco which > > relates to the above functionality : > > " > > =head2 PerlSetVar ntlmauthoritative > > > > Setting the ntlmauthoritative directive explicitly to 'off' allows > > authentication > > to be passed on to lower level modules if AuthenNTLM cannot autheticate > > the userand the NTLM authentication scheme is used. > > If set to 'on', which is the default, AuthenNTLM will try to verify the > > user andif it fails will give an Authorization Required reply. > > > > =head2 PerlSetVar basicauthoritative > > > > Setting the ntlmauthoritative directive explicitly to 'off' allows > > authentication > > to be passed on to lower level modules if AuthenNTLM cannot autheticate > > the userand the Basic authentication scheme is used. > > If set to 'on', which is the default, AuthenNTLM will try to verify the > > user andif it fails will give an Authorization Required reply. > > " > > > > > > > > From the above description, I am hoping for the following events to take > > place > > > > > > - ntlm authentication (if fail this level go to next authentication) > > > > - basic authentication (if fails this level go to other > > authentication systems) > > > > - read passwords in htpasswd file ( if this fails, then access not > > granted) > > > > > > > > > > To enable the following behaviour, I have included the following > > directives in httpd.conf. > > > > - ntlmauthoritative off > > - basicauthoritative off > > > > > > I have also taken out the basic authenticati
Re: NTLM module
>According to the documentation, if you set NTMLauthoritative to off, >then if NTLM authorization fails, then it should pass it on to the lower >level modules. Yes, that's true and it works like you describe it. The point that you are missing is (and that I have tried to show in my last mail), that during NTLM authentication there is no password! NTLM never passes the password to the server, so also the control gets passed to the lower level module, this lower level module must be able to handle NTLM. The default Apache auth handler isn't able to do so. It expects a password, which it doesn't gets because the client never has send it. Hope it's a little bit more clear now Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - I have cut out the below section from the doco which relates to the above functionality : " =head2 PerlSetVar ntlmauthoritative Setting the ntlmauthoritative directive explicitly to 'off' allows authentication to be passed on to lower level modules if AuthenNTLM cannot autheticate the userand the NTLM authentication scheme is used. If set to 'on', which is the default, AuthenNTLM will try to verify the user andif it fails will give an Authorization Required reply. =head2 PerlSetVar basicauthoritative Setting the ntlmauthoritative directive explicitly to 'off' allows authentication to be passed on to lower level modules if AuthenNTLM cannot autheticate the userand the Basic authentication scheme is used. If set to 'on', which is the default, AuthenNTLM will try to verify the user andif it fails will give an Authorization Required reply. " >From the above description, I am hoping for the following events to take place - ntlm authentication (if fail this level go to next authentication) - basic authentication (if fails this level go to other authentication systems) - read passwords in htpasswd file ( if this fails, then access not granted) To enable the following behaviour, I have included the following directives in httpd.conf. - ntlmauthoritative off - basicauthoritative off I have also taken out the basic authentication to see if this works ie Authtype ntlm (not basic) But this still does fail & allow the htpasswd system to verify access. If there are changes that need to be made to the AuthenNTLM.pm, I am not very well read in this area - are there any goof references. >From my novice perspective, it appears that when NTLM is included as part of the authentication, the ability for normal modules to verify access (ie htpasswd file) is no longer available ie the perl module does not pass back what the standard modules are expecting. I am sorry to be a bit unclear in my analysis, but I am fairly new to apache & perl modules. Many Thanks Adam original email attached -Original Message- From: Gerald Richter [mailto:[EMAIL PROTECTED]] Sent: Monday, 12 August 2002 5:35 PM To: Kaye-Smith Adam; [EMAIL PROTECTED] Subject: Re: NTLM module - Original Message - From: "Kaye-Smith Adam" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, August 12, 2002 4:51 AM Subject: NTLM module Hello , >When I enter in an NT password it all works ok but when I use a >user/pass from the htpasswd file, the only way it will work is that I >change the above line to > >AuthType Basic instead of >AuthType ntlm,Basic. > > >With this change I can access passwords in htpasswd & also authenticate >from an NT server but I can no longer use NTLM. The problem is that Basic authentication requires a password from the client which can be compared against your password file. In case of NTLM auth, there is no password ever send over the wire, so Apache doesn't have anything which it can compare against it's passwd file. The solution would be to derive a class from AuthenNTLM and do the computation of the challage and response based on the secrets in the passwd file (you would need to store MD4 hashs of your passwords somewhere). There is a module called Perl::AuthenNTLM which may be helpfull in doing this task. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +
Re: NTLM module
- Original Message - From: "Kaye-Smith Adam" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, August 12, 2002 4:51 AM Subject: NTLM module Hello , >When I enter in an NT password it all works ok but when I use a >user/pass from the htpasswd file, the only way it will work is that I >change the above line to > >AuthType Basic instead of >AuthType ntlm,Basic. > > >With this change I can access passwords in htpasswd & also authenticate >from an NT server but I can no longer use NTLM. The problem is that Basic authentication requires a password from the client which can be compared against your password file. In case of NTLM auth, there is no password ever send over the wire, so Apache doesn't have anything which it can compare against it's passwd file. The solution would be to derive a class from AuthenNTLM and do the computation of the challage and response based on the secrets in the passwd file (you would need to store MD4 hashs of your passwords somewhere). There is a module called Perl::AuthenNTLM which may be helpfull in doing this task. Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: TIPool / multiple database connections
Hi, I am a little late for the thread, nevertheless I like to give experiences I gathered trying to get DBI threadafe. As Stas already said before in this thread I have made a patch to DBI which makes DBI threadsafe. The result is released in DBI 1.30. This doesn't mean that the DBD driver can handles this, but mostly it's not hard to add. Threadsafe means not that you can share any sort of DBI handles. It's means that it's safe to use DBI with threads and that it is made sure that every intances of the Perl interpreter (i.e. every thread) gets it own instance of DBI. My inital goal was to share DBI handles between threads, but this would need very much work inside DBI. Additionaly Perl does not yet support sharing of objects (BTW share does not deep share data structures). So Tim suggested to first make DBI work correctly with threads at all. That's what we have done. Gerald P.S. I have some experimental code to share database handles inside of DBD::Oracle, since this was much easier to implement, but this is not quite ready yet. ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - - Original Message - From: "Elizabeth Mattijsen" <[EMAIL PROTECTED]> To: "Stas Bekman" <[EMAIL PROTECTED]>; "Perrin Harkins" <[EMAIL PROTECTED]> Cc: "Tim Keefer" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> Sent: Tuesday, July 16, 2002 11:17 AM Subject: Re: TIPool / multiple database connections > At 02:57 PM 7/16/02 +, Stas Bekman wrote: > >Perrin Harkins wrote: > >>Hmmm... That could really throw a wrench in things. If you have an > >>object based on a hash, and you share that hash, and you re-bless the > >>object in each thread, does that work? What if the hash contains > >>references to other variables. Do they need to be explicity shared as well? > >That's what I meant. Probably non need for Thread::Pool, at all. use a > >shared datastructure, maintain a list of free and busy items and simply > >hand pointers inside this datastructure to the threads asking for an item. > >e.g.: > > > >package DBI::Pool; > >use threads::shared; > >my @pool : shared; > >sub init {} # pre-populate pool with N connections > >sub get {} # return a ref to $dbh, grow the pool if needed > >sub put {} # move the pointer from the busy list to the free list > > Hmmm... as long as you do this _before_ the (Apache) threads get started, > this might work. I still haven't got my mind entirely around what one is > allowed to do, what you can do and is allowed, what you can't do but is > allowed and crashes, and what in principle is possible but you're barred > from because of e.g. prototyping getting in the way. > > > >won't this work? I guess Perrin is right in respect that the whole item > >needs to be shared (deep-shared). can we have such an attribute/function > >that will automatically traverse the datastructure and share it all? or is > >this the case already with 'shared'? > > Good question. I don't think it is deep shared and that's why it probably > doesn't work. The way Thread::Queue::Any (which is the transport medium > for Thread::Pool) handles this, is by serializing any data structure with > Storable, pass that around and deserialize that on the other end. > > > >Now since we want to have various connections, it can be: > >my %pools : shared; > >where each key is a unique identifier, "compiled" from the dbi connect's > >DSN string and a value is the actual pool. > > That's an approach. If you could actually share the $sth objects. About > which I have my doubts. > > > >BTW, there is no more need for Apache prefix in Apache::DBI, this can be a > >generic Pool class. I guess Apache::DBI can subclass DBI::Pool and add > >things like connect_on_init(), but just to build the initial pool when the > >process starts. > > DBI::Pool would be ok. But unless I'm wrong about the sharing issues, > you're going to be stuck, at least with this version of Perl, with > serializing between threads. > > > Liz > >
Re: [win32] new perl/apache/mod_perl binary
>Yes, the problem is Embperl. Commenting it out (lines 1084 to 1096 of >httpd.conf) fixed things. Phew. I have also seen this problem with Embperl when installing Apache service. It's not special to this binary version. Since Apache gets always installed correctly, I never had taken the time to track it down. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: [win32] new perl/apache/mod_perl binary
Hi Randy, >I've placed an updated perl-5.6.1/Apache-1.3.26/mod_perl-1.27 > Win32 binary package, perl-win32-bin-0.8.exe (a self-extracting > archive), in ftp://theoryx5.uwinnipeg.ca/pub/other/. Is this package binary compatible with ActiveState, i.e. can I do a ppm install to get additional packages? Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: Embperl 2.0b8
Hi, > > While I am not very familiar with Embperl, I saw some discussion concerning > PHP that struck me as pretty interesting for Embperl and similar > applications: have you considered making (or atleast having an option for) > Embperl an output filter for Apache 2/mod_perl 2? I think this would more > clearly show its purpouse, just like SSI is now really a filter under > Apache 2.0. > Yes, 2.0b8 can be a output filter for Apache 2.0, even more Embperl::Object, which allows you to create your site out of objects or components, can now not only include other Perl output, but any output that is created by a Apache request, you just use the subreq parameter to the Execute function (which is used to inlcude other parts), give it an URI and you have that part included in your page, regardless if it is a CGI script, output generated by PHP or Java or whatever runs inside Apache and of course you can postprocess the output that comes from other Apache components. > If there is already a way to filter output through Embperl, I'm sorry for > this useless post :( > Questions are never useless, this one for example gives me the chance to show one of the new feature of Embperl 2 :-) Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Embperl 2.0b8
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/Embperl-2.0b8.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Embperl-2.0b8.tar.gz size: 628343 bytes md5: d089a86671a0c559b77f107a4e6d67c9 I have done a lot of fine tuning and error fixing since 2.0b7. Also Embperl now supports mod_perl 2.0 with prefork MPM (threaded MPM will require Perl 5.8.0). The docs are moveing towards 2.0, but some features are still only documentent in README.v2. Everybody who is running a copy of Embperl 2, should upgrade to 2.0b8, because this will improve stabibility. Enjoy Gerald Changes since 2.0b7: 2.0b8 (BETA) 25. Juni 2002 - exit can now exit the whole request. When called without argument it exits the current component, like before, when called with argument it exits the whole request. - Added support for Apache 2.0 / mod_perl 2.0 (prefork MPM). - Added the possibility to catch the output of a sub-request (e.g. a CGI script, Java or PHP output) when running under Apache 2.0 - when setting $r -> param -> filename in an application object to a relativ path it is interpreted relativ to original request - Start to catch up with new features of Embperl 2 in the docs. Added Config.pod for configuration and calling. - Lots of improvments in the new Embperl website, which serves as best example for using the new Embperl 2 features. It's part of the distribution and can be found under eg/web. See eg/web/README. - fixed bug with setting of escmode and print Out reported by Eric-Olivier Le Bigot. - fixed incorrected escaping inside of an URL when expanding an hash or array reference. Reported by Axel Beckert. - fixed possible endless loop when expanding hash or array inside of an URL. - fixed a segfault that occured when source file encryption was enabled. Reported by Edwin Ramirez. - fixed a segfault that occured when no input file is given. Reported by Edwin Ramirez. - fixed a segfault that occured on solaris when input comes from memory. Reported by Mike Wesemann. - readd possibility to build version with and without Apache support on windows. - Remove Content-Length: 0 HTTP-Header in CGI Mode - Fixed segfault when replacing an attribute. Reported by Michael Stevens. - Fixed random segfaults, that had occured when Perl had reallocated it's internal Stack. - When apache is started with -D EMBPERL_APDEBUG, it outputs a configuration trace. - When file is not found, Embperl::Object now returns status 404, instead of 500. Reported by Cameron McBride. - When optReturnError is set, Embperl::Object now really returns the error code. Reported by Cameron McBride. - Fixed a reference count error when using the import parameter. Reported by Michael Smith. - Fixed string reference counting problem in RTF&POD syntax. - Fixed a segfault that had occured when a file with a syntax error is compiled the second time within the same process. Reported by Michael Smith. - removed do { } around expressions of [+ +] blocks inside urls, because this cost performance and now all [+ +] behaves the same. Reported by Michael Smith. - make stop now works also on windows. - make start, which can be used to view/test the Embperl website localy, now displays the URL how to request the site. - libxslt does correct error reporting now. - libxslt output encoding is now recognized correctly. - set Content-Length when sending error page, so Internet Explorer won't show his own error page. ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: separating C from V in MVC
> Gerald Richter wrote: > > Embperl 2.0 can invoke such a controller (it's called application object > > there) after it has setup it's request parameters (GET/POST data, session > > data, etc.) and before any templates are get a chance to run. > > That sounds like a good addition to Embperl. Can you give a URL for the > documentation on how to use this? > http://search.cpan.org/doc/GRICHTER/Embperl-2.0b7/Embperl/Object.pm contains a short paragraph about it (search for EMBPERL_OBJECT_APP ) and inside the Embperl distribution is an example application (see eg/web). I am currently working on improveing the docs for Embperl 2.0, since a lot of nice new features are rarly documented right now Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: separating C from V in MVC
> > > > [% Ctrl.Search() %] > > > > makes Controller::Search any less a controller. > > You're right. It just looks kind of odd to me, invoking a template for > something that is not a display-related task. It looks like the way > people typically do MVC in Mason or Embperl, with a first template that > doesn't do anything but invoke a module to take over the processing. > Embperl 2.0 can invoke such a controller (it's called application object there) after it has setup it's request parameters (GET/POST data, session data, etc.) and before any templates are get a chance to run. So this application object is able to do the necessary processing and give back parameters to Embperl so the right templates will be displayed, according to the result of the controllers processing. This approach has the benefit that Embperl does the tasks that need to be done for every request, so you don't have to care about it and can concentrate on the real controller functions. Additionaly it implements an object orientated approach, so you can get addtional benefits by spliting up your controllers functionality in different application objects, which inherit from each other. (same inherence schema can be used for templates) Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: AuthenNTLM, IE, KeepAlives
RE: AuthenNTLM, IE, KeepAlives >I am using Apache::PerlRun instead of Apache::Registry. Could this be an issue? I am not using PerlRun, but maybe. Can try without it? Maybe just a small test script. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: AuthenNTLM, IE, KeepAlives
> > The issue that I am having is that when I have KeepAlive turned on my > scripts won't get the params from the URI. But this only happens in > Internet Explorer. Opera works fine. > This normaly should not happen. How do you retrieve the parameters ? Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: [RFC] Dynamic image generator handler
Hi, I am a little bit late for this thread, but anyway... > > I looked at Apache::ImageMagick last night however, and although it > seems pretty usefull, it doesn't really address what I want to do with > my module. > I read your original RFC and as far as I see you can do everything you have requested with Apache::ImageMagick. What are you missing? Beside the fact that your benchmark shows that ImageMagick is slower then GD (but ImageMagick also handle a lot more picture formats then GD, for example I use it to convert TIFF input files to jpeg) What about the idea from Ed, to have one module, where you can drop in different backends? Would this be an idea to extent Apache::ImageMagick, so that it can use other grapical libraries? Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Apache-AuthenNTLM 0.15
The URL ftp://ftp.dev.ecos.de/pub/perl/ntlm/Apache-AuthenNTLM-0.15.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-AuthenNTLM-0.15.tar.gz size: 46250 bytes md5: 23e8bc0235e161aa0d44d95e0e47d684 The main enhancement of this release is the proper support of win9x operation systems, which send non unicode messages. The purpose of this module is to perform a user authentication via Mircosofts NTLM protocol. This protocol is supported by all versions of the Internet Explorer and is mainly usefull for intranets. Depending on your preferences setting IE will supply your windows logon credentials to the web server when the server asks for NTLM authentication. This saves the user to type in his/her password again. A lot of ideas and information are taken from the similar Apache module mod_ntlm, which can be found at http://sourceforge.net/projects/modntlm/ The main advantage of the Perl implementaion is, that it can be easily extented to verfiy the user/password against other sources than a windows domain controller. The default implementaion is to go to the domain controller for the given domain and verify the user. If you want to verify the user against another source, you can inherit from Apache::AuthenNTLM and override it's methods. To support users that aren't using Internet Explorer, Apache::AuthenNTLM can also perform basic authentication depending on it's configuration. Enjoy Gerald Changes since 0.14: - Added patch from Brian Paulsen which causes correct handling of non unicode charset (needed for some versions of win9x) and more verbose debugging output (decoded flags) ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: Embperl 2.0b7
> > Any idea when 2.0-STABLE is going to come out? > I think the main issuses with the code are solved, so it's stable to use right now, also I want to give people some more time for testing. The main work to do before the stable release is to write better documentation. To transform all the quick notes in README.v2 into real docs. I can't promise anything, but I hope to get it out during the next few months. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Embperl 2.0b7
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/Embperl-2.0b7.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Embperl-2.0b7.tar.gz size: 620902 bytes md5: 89b8dc62aa28684be64fd0d44857d641 Embperl is a system for building dynamic websites with Perl. See http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/ (german) for more information. This is mainly a bug fix release. Everybody who is using a 2.0 beta version of Embperl encouraged to upgrade. Enjoy Gerald Changes since 2.0b6: - Changed default for EMBPERL_ESCMODE from 3 to 7. This disables by default the possibilty use the backslash to not escape a piece of output. This increases the security, because it by default avoids the interpretation of the backslash in any user input that is redisplayed. - Fixed bug in mail syntax and Embperl::Mail reported by Jan Kyncl. - Removed LogFormat and CustsomLog from test config, so mod_log_config is not required for make test. Reported by Jochen Topf. - Removed EmbperlObject.pm from MANIFEST, since it was replaced by Embperl/Object.pm. - Make symbolsnames unique so they don't clash with 1.3.4. Reported by Kee Hinckley. - Fixed a problem that ocurred when a reference to some of the Embperl objects was kept after the end of it's lifetime, which caused a segfault. - Don't do a path search when the filename starts with './'. - Fixed a segfault that occured when many nested sub's are used, but only a low number of strings. - Fixed a problem that tags are not correctly selected, when the tag was inside a loop and the name of the tag was dynamicly generated. - Added test for config directives inside of VirtualHost --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Embperl 2.0b6
t_messages to define current message set for current language during application init. - Added embpmsgid.pl utility to extrcat message ids from Embperl pages and put them in a Data::Dumper or dbm file. - Simplified the definition of the recipe structure. This allows much more intuitiv definition of a new recipe. - A recipe struture can now also be passed directly to the Execute function as parameter. - The get_recipe function now can be overriden by a custom application object. - Enhanced POD parser. Now generates a similar output as pod2xml, which is better suitable for XSLT processing. Also the POD parser now can pasers POD out of other Embperl files. - Fixed problem with parameter passing to xslt processors, which were always ignored on the first request. - Renamed configuration directive EMBPERL_FILESMATCH to EMBPERL_URIMATCH to better describe what it is doing. - exit works now outside of [$ sub $] - New configuration directive EMBPERL_SESSION_MODE allows to configure to pass session inside of the QUERY_STRING - Embperl doesn't add's a \r\n at the end of textfiles anymore. - Moved send_error_page and mail_errors into Embperl::App, so they can be overridden by a custom application object. - Added configuration directives EMBPERL_MAIL_ERRORS_LIMIT, EMBPERL_MAIL_ERRORS_RESET_TIME and EMBPERL_MAIL_ERRORS_RESEND_TIME to limit the number of errors send in a small time. - When running under Embperl::Object all sourcefiles including for example xsl stylesheets are now search throught the searchpath. - Fixed a bug that causes input fields and textarea field to not autofilled anymore after a sub was called. Reported by Kee Hinckley. ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: DBIx::Recordset and Select with $order
> > In my perldoc DBIx::Recorset there is: > > *set = DBIx::Recordset -> Select (\%params, $fields, $order) > $set -> Select (\%params, $fields, $order) > $set -> Select ($where, $fields, $order) >Selects records from the recordsets table(s). > [...] >order: comma separated list of fieldnames to sort on > > *set = DBIx::Recordset -> Search (\%params) > [nothing with $order here] > > So the Documentation is *very* wrong. :) No, according to that documentation your example has to be written as *set = DBIx::Recordset->Select( {'!DataSource' => $dsn, '!Table' => 'config', '!Username' => $user, '!Password' => $pass}, undef, 'id'); again, order is the third parameter to Select and _not_ a part of the parameter hash. > (Yes, in the Examples Part $order is only used with Search, but i dont > look there very often. :) ) > It's mentioned under "Search parameters", as I wrote in my privious mail: Search parameters $start First row to fetch. The row specified here will appear as index 0 in the data array. [..] $order Fieldname(s) for ordering (ORDER BY) (must be comma-separated, could also contain USING) Since Search (and other methods) can take the same parameters, the parameter are grouped together in the documentation by type. Hopefully it's more clear now Gerald P.S. You asked on the embperl mailing list, but answered on the modperl list. I CC it to both... - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache-AuthenNTLM-0.14 for ssl VirtualHost
Hi, NTLM needs KeepAlives turned on, because the handshake must take place on the same connection, I guess you have turned KeepAlive off for your ssl connection Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - - Original Message - From: "Umhang Juerg, IT2" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, March 05, 2002 12:46 PM Subject: Apache-AuthenNTLM-0.14 for ssl VirtualHost hi we are using AuthenNTLM from G. Richter to authenticate our intranet users ... works fine for http-server. unfortunately it doesnt work with ssl aware virtual hosts. Server Version: Apache/1.3.23 (Unix) mod_perl/1.26 mod_ssl/2.8.7 OpenSSL/0.9.6c client hangs :-( last entries in error.log AuthenNTLM: nonce=0Dv"g'î AuthenNTLM: Send header: NTLM TlRMTVNTUAACACgBggAAMER2ImcPke4AAA== httpd.conf PerlSetVar defaultdomain PerlSetVar basicauthoritative on PerlSetVar ntlmdebug 1 PerlAddVar ntdomain " pp bb" PerlAuthenHandler Apache::AuthenNTLM AuthName "Private Domain" AuthType ntlm,basic # require user \x something wrong with our config? works somewhere with ssl servers ? kind regards juerg umhang o | /\_| Juerg UmhangWebergutstrasse 12 / | Informatik Post CH-3030 Bern /\ | IT2 IE-NAS Switzerland /_/_ | Tel: ++41 31 338 1473 | Mailto:[EMAIL PROTECTED] Fax: ++41 31 338 7492
ANNOUNCE: Apache-AuthenNTLM 0.14
The URL ftp://ftp.dev.ecos.de/pub/perl/ntlm/Apache-AuthenNTLM-0.14.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-AuthenNTLM-0.14.tar.gz size: 45446 bytes md5: 704a1c161d2a308c74b1397e5bca5a1f The purpose of this module is to perform a user authentication via Mircosofts NTLM protocol. This protocol is supported by all versions of the Internet Explorer and is mainly usefull for intranets. Depending on your preferences setting IE will supply your windows logon credentials to the web server when the server asks for NTLM authentication. This saves the user to type in his/her password again. A lot of ideas and information are taken from the similar Apache module mod_ntlm, which can be found at http://sourceforge.net/projects/modntlm/ The main advantage of the Perl implementaion is, that it can be easily extented to verfiy the user/password against other sources than a windows domain controller. The default implementaion is to go to the domain controller for the given domain and verify the user. If you want to verify the user against another source, you can inherit from Apache::AuthenNTLM and override it's methods. To support users that aren't using Internet Explorer, Apache::AuthenNTLM can also perform basic authentication depending on it's configuration. Enjoy Gerald Changes since 0.11: 0.14 26. Feb 2002 - fixed a problem that page content of Perl sometimes goes to the stderr instead of stdout 0.13 9. Jan 2002 - return mapped username, when second request on same connection, instead of unmapped 0.12 8. Jan 2002 - fix broken Authen::Smb::authen function in Authen::Smb 0.92 that ships with Apache::AuthenNTLM 0.11 8. Jan 2002 - Initial public release ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Thumbnail generator
> > ImageMagick is way too slow for use in a production system. > Especially if your resizing large images into thumbnails. Apache::ImageMagick will cache the created thumbnail, so it only has to be done once and can it automaticly recreate the thumbnail if the pictures on disk changes. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Thumbnail generator
> I recently decided that Apache::Gallery is really nice if you want to > sit down and start fiddling with templates, but that I needed to make a > "quick-easy" version for myself. The design is to be extremely simple, > and is divided into two seperate modules. The first is an on-the-fly > thumbnail generator (currently supports only jpeg), which is just a > spiced up implementation of Image::GD::Thumbnail. You may want to take a look at Apache::ImageMagick (if you not already have). It's let's you create thumbnails very easy (just two parameters pic.xxx/scale?geometry=100x100) and ImageMagick supports over 80 different formats. It also handles conversion from 4 color pictures to RGB for your thumbnails and many other things, if you need them. Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Apache::AuthenNTLM
The URL ftp://ftp.dev.ecos.de/pub/perl/ntlm/Apache-AuthenNTLM-0.11.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-AuthenNTLM-0.11.tar.gz size: 50288 bytes md5: fa69872fe0a643de4a02921b9d4715be The purpose of this module is to perform a user authentication via Mircosofts NTLM protocol. This protocol is supported by all versions of the Internet Explorer and is mainly usefull for intranets. Depending on your preferences setting IE will supply your windows logon credentials to the web server when the server asks for NTLM authentication. This saves the user to type in his/her password again. A lot of ideas and information are taken from the similar Apache module mod_ntlm, which can be found at http://sourceforge.net/projects/modntlm/ The main advantage of the Perl implementaion is, that it can be easily extented to verfiy the user/password against other sources than a windows domain controller. The default implementaion is to go to the domain controller for the given domain and verify the user. If you want to verify the user against another source, you can inherit from Apache::AuthenNTLM and override it's methods. To support users that aren't using Internet Explorer, Apache::AuthenNTLM can also perform basic authentication depending on it's configuration. Enjoy Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache::Session getting DESTROYed in wrong order
># Won't get cleaned up properly >local %foo; >tie %foo, 'Dummy', name => '%foo'; local only make a copy of the original value and restores it at the end of the scope, so %foo will not destroyed, but restored at the end of the scope. I guess this is the reason my it still stays tied. In my experiences there are more weired behaviours with tied hashs and arrays. (e.g. don't access a tied hash inside of a method of a tied hash, use FETCH instead, tied hash element doesn't always spring into existence, like normal hash elements does). You have to use them with some care. > > Investigating with Devel::Peek suggests that it's a %foo refcount > problem, it's somehow getting set to 2 after tie(%foo). > 2 is ok. one for %foo itself and one because it's tied to another object Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: require in Embperl (was: Mason vs embperl)
> "Lihn, Horng-Twu" <[EMAIL PROTECTED]> writes: > > > I have a library of perl routine that I call in cgi-bin environment > > where I usually "require". I could not find any way to require it > > and use it in Embperl. I can not find any doc describing how this is done. > > (I can require it in the Mason handler.pl) > > In embperl, you can require or use within [! !] and [- -] tags. > > If you only want to require the module (and not import symbols, like "use" does), it's the best to load it on server startup, for example via PerlModule foo in your httpd.conf Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: embperl [* *] does not work
> I am trying [* *] tag and the code as simple as this does not work. Note that [* *] is experimetal and will not work always in 1.3.x (it does in 2.0) > I am using embperl 1.3.2 build from theoryx5.uwinnipeg.ca for Windows. > Please upgrade to the newest version (1.3.4), because there where a number of bug fixes for win32 > > Test > > [* $c = 5; *] > count: [+ $c +] > [* $c++; *] > count: [+ $c +] > - > This normaly should work without problems. If it doesn't work after an upgrade try to replace [* *] with [- -] Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: HTML forms and piplining templating systems
> > > But then if you're happy with EmbPerl, why switch? > > A couple of reasons, really: > > 1) well, I actually wouldn't switch per se; people think in > different ways, and it's often useful to support (and feel > comfortable with) different development paradigms > Embperl 2.0 (starting with b4) also supports pipelining and XML. This especialy gives a lot of possibilites to use the best of both worlds together or standalone. Of couse such things are new in Embperl and not everything is documentated very good right now, but I think it's worth a look. In 2.0b6 I plan to finish the Perl API so you can easly write your own Embperl's provider/processor/filter in Perl. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Embperl 1.3.4
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/HTML-Embperl-1.3.4.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/HTML-Embperl-1.3.4.tar.gz size: 356286 bytes md5: 1cfa47da50fd42c9d6cb5dc79ee73326 This is mainly a maintaince release with a few new features. I expect it to be the last release of the 1.x series. All further development is made in the 2.0 versions. The extented session support I have planed for this release is also moved to the 2.0 development branch, altough there are some enhancement in session management already build in. Embperl is a system for building dynamic websites with Perl. It gives you the power to embed Perl code in your HTML documents and the ability to build your Web site out of small reusable objects in an object-oriented style. You can also take advantage of all the usual Perl modules, (including DBI for database access) use their functionality and easily include their output in your web pages. Embperl has several features which are especially useful for creating HTML, including dynamic tables, form field processing, URL escaping/unescaping, session handling, and more. See http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/ (german) for more information. Changes since 1.3.3: - Added method $r -> Espace for html & url escaping - URL escpage # to %23 - use Content-Lenght HTTP Header instead of $ENV{CONTENT_LENGTH} when running under mod_perl and win32. This fixes a bug with POSTed data reported by Lukas Zapletal. - Display correct Apache module name in Makefile.PL when requesting path for Apache module. Patch from James Lee. - New session handling using Apache::SessionX. (This also fixes problem with MD5 and Perl 5.6.1) - Fixed a bug that cause file-uploads to fail for the first request to a file when running under EmbperlObject. Reported by Thoren Johne. - Added possibilities to add the session id as argument to any URL, instead of using cookies. - Added new hash %sdat which holds temporary sessins data. - Added options optAddUserSessionToLinks, optAddStatusSessionToLinks and optNoSessionCookies to control how the session id is passed. - Make sure the HTML::Embperl::Mail generates correct line endings - If Perl's STDOUT and/or STDIN are tied to any package, Embperl now calls the Perl methods PRINT and READ for doing I/O. This currently only works, when not running under mod_perl. - Embperl can now run under FastCGI. Use embpfastcgi.pl instead of embpcgi.pl. - Delete unnecessary PerlFixupHandler from httpd.conf.src for make test. Reported by David Merberg. - Add undef to %idat for select tag with nothing selected if optAllFormdata is set. - Cleanup of DBIx::Recordset objects now honors the setting in %CLEANUP. Problem reported by Kee Hinckley. - Embperl can now use encrypted sourcefiles. See crypto/README for details. - Embperl can now be installed as Apache and non Apache version on the same system. This is neccessary to work on Windows in- and outside of Apache. - Fixed a linkage problem with symbol embperl_module, first reported by GustavKristoffer Ek. - error message now always contain a filename. - Added optShowBacktrace to enable backtrace of filename in error messages - Removed obsolete debug flags dbgDisableCache, dbgWatchScalar, dbgEarlyHttpHeader - Fixed problem with changeing to page directory on win32. Reported by Hans de Groot. - Fixed problems with mod_perl environement handling with ActiveState Perl on win32. - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Apache::ImageMagick 2.0b5
The URL ftp://ftp.dev.ecos.de/pub/perl/image/Apache-ImageMagick-2.0b5.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-ImageMagick-2.0b5.tar.gz size: 10734 bytes md5: f2b27559a97f349603c218be8205409d This release fixes a bug, which causes cached files to stay opened. NAME Apache::ImageMagick - Convert and manipulate images on the fly DESCRIPTION This module uses the Image::Magick library to process or create an image on the fly. It is able to convert the source image to any type you request that is supported by Image::Magick (e.g. TIFF, PPM, PGM, PPB, GIF, JPEG and more). Additionaly you can specify (multiple) image manipulation filters in the additional path info and format options in the query string. Apache::ImageMagick caches the result image so multiple requested with the same parameters only needs one computation. To do more sophisticated manipulation, Apache::ImageMagick can run a script that does the image manipulation/creation. Last but not least Apache::ImageMagick comes with a proxy module, that can be linked into a non mod_perl frontend proxy server and which will delivers cached images which highest possible speed. For detailed information see perldoc Apache::ImageMagick AUTHOR G.Richter ([EMAIL PROTECTED]) Based on work from Lincoln Stein and Doug MacEachern publish in "Writing Apache Modules with Perl and C" see www.modperl.com ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Embperl 2.0b5
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/HTML-Embperl-2.0b5.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/HTML-Embperl-2.0b5.tar.gz size: 506804 bytes md5: e5836be6ad29f8658052e512e2427c74 This is mainly a bug fix release. The only new feature is the possibility to pass parameters to xslt processors. Details about the new XML support can be found in the announce for 2.0b4 (see http://www.ecos.de/~mailarc/embperl/2001-11/msg00120.html) Embperl is a system for building dynamic websites with Perl. It gives you the power to embed Perl code in your HTML documents and the ability to build your Web site out of small reusable objects in an object-oriented style. You can also take advantage of all the usual Perl modules, (including DBI for database access) use their functionality and easily include their output in your web pages. Embperl has several features which are especially useful for creating HTML, including dynamic tables, form field processing, URL escaping/unescaping, session handling, and more. With 2.0 this feature are extented to use XML/XSLT, extent the Embperl's syntax, build taglibs, cacheing and more. See http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/ (german) for more information. Changes since 2.0b4: - Add xsltparam parameter which takes a hashref and is used to pass parameters to the xslt processor. If not given defaults to %fdat. - Add require URI::URL to test.pl so make test work with newer LWP. Patch from Jonathan Stowe. - Fixed problem in registry/tied test, which failed for some Apache versions because of addtional http header. Patch from Jonathan Stowe. - Fixed problem with comments inside [! !] blocks. Reported by Alan Milligan. - Fixed compiling problem with very recent versions of libxslt. Reported by Michael Stevens and Jonathan Stowe. - Fixed make test so it skips session tests if Apache::SessionX isn't installed. Reported by from Jonathan Stowe. - Fixed path problem with Execute ({sub => foo,... }) on win32. - Fixed a problem with duplicate subroutine names when running multiple pages in the same package. - Fixed problem with reloading when file changed, which sometimes didn't reload correctly in 2.0b4 - Fixed memory leak which occured when using libxslt. - Fixed MakeMaker problem with Perl 5.7.1. - Removed some uninitialized value warnings. - Added "make start" and "make stop" to start and stop test httpd Enjoy Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Embperl 2.0b4
EmbperlObject, i.e. included files are searched in the same way as normal Embperl files. - Add new method AddTagInside in HTML::Embperl::Syntax::HTML to allow tags inside of other tags. - Added method $r -> Espace for html & url escaping - URL escpage # to %23 - use Content-Lenght HTTP Header instead of $ENV{CONTENT_LENGTH} when running under mod_perl and win32. This fixes a bug with POSTed data reported by Lukas Zapletal. - Display correct Apache module name in Makefile.PL when requesting path for Apache module. Patch from James Lee. - New session handling using Apache::SessionX. (This also fixes problem with MD5 and Perl 5.6.1) - Fixed a bug that cause file-uploads to fail for the first request to a file when running under EmbperlObject. Reported by Thoren Johne. - Make sure the HTML::Embperl::Mail generates correct line endings - If Perl's STDOUT and/or STDIN are tied to any package, Embperl now calls the Perl methods PRINT and READ for doing I/O. This currently only works, when not running under mod_perl. - Embperl can now run under FastCGI. Use embpfastcgi.pl instead of embpcgi.pl. - Delete unnecessary PerlFixupHandler from httpd.conf.src for make test. Reported by David Merberg. - Add undef to %idat for select tag with nothing selected if optAllFormdata is set. - Cleanup of DBIx::Recordset objects now honors the setting in %CLEANUP. Problem reported by Kee Hinckley. - Embperl can now use encrypted sourcefiles. See crypto/README for details. - Embperl can now be installed as Apache and non Apache version on the same system. This is neccessary to work on Windows in- and outside of Apache. - Fixed a linkage problem with symbol embperl_module, first reported by GustavKristoffer Ek. - error message now always contain a filename. - Added optShowBacktrace to enable backtrace of filename in error messages - Removed obsolete debug flags dbgDisableCache, dbgWatchScalar, dbgEarlyHttpHeader Enjoy Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Apache::SessionX 2.00b3
The URL ftp://ftp.dev.ecos.de/pub/perl/session/Apache-SessionX-2.00b3.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-SessionX-2.00b3.tar.gz size: 11701 bytes md5: c3998900a065c1f7a87c40bcf6169ef1 Apache::SessionX extents Apache::Session. It was initialy written to use Apache::Session from inside of HTML::Embperl, but is seems to be usefull outside of Embperl as well, so here is it as standalone module. Apache::Session is a persistence framework which is particularly useful for tracking session data between httpd requests. Apache::Session is designed to work with Apache and mod_perl, but it should work under CGI and other web servers, and it also works outside of a web server alltogether. Addtionaly to Apache::Session, Apache::SessionX provides the following possibilites: - Configuration: Makefile.PL checks which componemnts are installed on the system and interactivly builds a set of configuration, including a default one. This configurations are saved and can be used by name later on. The default configuration is used, if no parameters are given to Apache::SessionX. This simplifies the configuration and usage. - Lazy operation: Apache::SessionX supports lazy operation, that means that the actual data access only takes place if the session data is needed, so you are able to setup the session object, without worrying about performance in case you don't access the session data. - Specifing the ID: Apache::SessionX can use a given ID instead of creating it's own one. You can also give an string which is used to generate the ID - Genrate unique ID: Apache::SessionX is able to save the session with an new ID every time data is modified. This make it possible to keep an history. - Addtionaly methods are provided to get the ID, the inital ID, the modified status and to close a session, without destroying the session object itself. Additional features like session expiration are planned. Enjoy Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache::RequestNotes and sharing information
>The PerlAccessHandler sets a session_based cookie, using TIEHASH >$r->pnotes("COOKIES")->{'SESSION_ID'} = $session{_session_id}; Unless you have already stored a hash ref in pnotes with key COOKIES, you must write: $r->pnotes("COOKIES", {'SESSION_ID' => $session{_session_id}}) ; this stores a new hash ref in the pnotes table. Then it should work Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANN/RFC: Apache::Session::Generate variants
> > If you have other things on your mind, that's fine. That's why I > suggested you should consider letting someone else maintain it. I know > I'm not the only person frustrated by the current state of affairs. > My solution to this problem is, that I have created a package named Apache::SessionX which subclasses Apache::Session and contains all the eXtentsion I need (most of them for Embperl, but they are also usefull outside of Embperl). This also contains a replacement for Apache::Session::Flex which can be configured via Makefile.PL and make test is testing if this really works on the system. The main point why I wrote this is, that Jeff doesn't like to have some of the functionality in the Apache::Session base class and I can bugfix and maintain it myself, without waiting for the next release of Apache::Session (there are also some ways to subsubclass Apache::Session::x:y packages build in) It is currently available from ftp://ftp.dev.ecos.de/pub/perl/session/ and will be soon released to CPAN Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: EmbPerl for ActivePerl Distribution
> We have an HTML::Embperl ppm package (and also > Apache::ASP and HTML::Mason) at > http://theoryx5.uwinnipeg.ca/ppmpackages/ > which you can install via the ppm utility in the same way that > the mod_perl package is installed from this location. > And everthing could be found in Embperl's INSTALL.pod file :-) see: http://perl.apache.org/embperl/INSTALL.pod.1.html#WIN_32_with_ActiveState_Pe rl Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Another way to perhaps do this......
> > Wouldn't it be better to subclass Apache::SSI instead of > HTML::Embperl::Syntax::SSI ? That part of it would be really easy - the > hard part would be actually implementing the OAS directive actions. > > If you really only want to do SSI, then subclassing Apache::SSI is of course the easier and better way to go. If you already use Embperl or want the features of EmbperlObject together with SSI, extenting HTML::Embperl::Syntax::SSI offers far more possibilities Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Setup of CGI.pm failed
> I am occasionally getting the following message from CGI.pm in $@: > > Line 1: Setup of CGI.pm failed: > That error message comes from Embperl. Embperl setup CGI.pm to get a file upload. When something went wrong with this file upload, CGI.pm dies, which is catched with this line: > > eval { $cgi = new CGI }; > and Embperl generates the error message Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: Apache::ImageMagick 2.0b3
The URL ftp://ftp.dev.ecos.de/pub/perl/image/Apache-ImageMagick-2.0b3.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/Apache-ImageMagick-2.0b3.tar.gz size: 10596 bytes md5: 52cc19c99c0d1cf6922a612bc3527511 NAME Apache::ImageMagick - Convert and manipulate images on the fly DESCRIPTION This module uses the Image::Magick library to process or create an image on the fly. It is able to convert the source image to any type you request that is supported by Image::Magick (e.g. TIFF, PPM, PGM, PPB, GIF, JPEG and more). Additionaly you can specify (multiple) image manipulation filters in the additional path info and format options in the query string. Apache::ImageMagick caches the result image so multiple requested with the same parameters only needs one computation. To do more sophisticated manipulation, Apache::ImageMagick can run a script that does the image manipulation/creation. Last but not least Apache::ImageMagick comes with a proxy module, that can be linked into a non mod_perl frontend proxy server and which will delivers cached images which highest possible speed. For detailed information see perldoc Apache::ImageMagick AUTHOR G.Richter ([EMAIL PROTECTED]) Based on work from Lincoln Stein and Doug MacEachern publish in "Writing Apache Modules with Perl and C" see www.modperl.com ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Embperl, modules, cleanup and the stop button
> > My feeling that this cleanup is infact unnecessary (all though worth > having regardless), as the pipeline nature of the request (call > database for *all* data required, *then* output), any database calls > (and corresponding locks) will have completed before the abort > (SIGPIPE) is recognised. This should go double for embperl, which > executes all perl code before outputting any headers and data. > The connection is only aborted, when data is send. So it's true that normaly there is no abort before the whole page has processed within Embperl., but there are other reason a page may fail. So it's a good idea to have a cleanup. In an Embperl page you can define a function called CLEANUP which will be call _always_, regardless what fails. It will be called after all content is send to the browser. Gerald --------- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Error in Perl code: Can't locate Apache/Cookie.pm in @INC
> mod_perl as a DSO; can someone point me in the right direction to get the > other modules loaded or what I didn't do that I needed to do to make the > active? > Put a PerlModule Apache::Cookie PerlModule Apache::Registry etc. in your httpd.conf Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: PerlInitHandler and PerlSetEnv
> > > > There is no "directory, .htaccess" in the context and that's like it really > > behaves. (unless they changed it in a very recent version and didn't update > > the docs, which I don't expect) > > > > PerlSetEnv is the only chance to have different values in different > > directories. > > i think the docs are out-of-date, seems to work inside location: > Doug, you are right. It apears in the Apache CHANGES file for 1.3.7, but the docs still not updated Gerald P.S. I have made a bug report, so hopefully the docs will get updated also - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: DBIx::Recordset 0.24
The URL ftp://ftp.dev.ecos.de/pub/perl/dbi/DBIx-Recordset-0.24.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/DBIx-Recordset-0.24.tar.gz size: 92611 bytes md5: 76835b342ac63d731a4eb9529613ee99 DBIx::Recordset is a perl module for abstraction and simplification of database access. The goal is to make standard database access (select/insert/update/delete) easier to handle and independend of the underlying DBMS. Special attention is made on web applications to make it possible to handle the state-less access and to process the posted data of formfields, but DBIx::Recordset is not limited to web applications. The main features of DBIx::Recordset are: - it has a compact interface, normaly only one function call is necessary for setup and data retrival/inseration/deletion - it takes care about type conversion and quoting - it is able to access/modify tables via arrays and hashs - it can automaticly create sub-objects for tables which are logical linked together - it can automatily create joins based on logical links - it has input/output filters on a per field/per type basis - it can create WHERE expression from a hash, which is especially usefull in a cgi environement, where you can simply pass all paramters posted to your cgi script to DBIx::Recordset and DBIx::Recordset creates an corresponding SELECT. - it can create previous/next buttons for html output - it works together with HTML::Embperl for easily genration of HTML output - it has an own database abtraction class DBIx::Compat which gives all the necessary information, so that DBIx::Recordset is able to work with different database systems - The class DBIx::Database is able to retrieve and store meta infomation of the database in a centralised location, which can be used for later setup. This is also usefull when running under mod_perl, because you can do all the setup and configuration work at webserver startup time, speeding up your scripts when a actual request is processed. DBIx::Recordset use the DBI API to access the database, so it should work with every database for which a DBD driver is available (see also DBIx::Compat) For more information look at perldoc DBIx::Recordset. An introduction to DBIx::Recordset can be view with perldoc Intrors.pod. The introduction can also be viewed online at http://perl.apache.org/embperl/Intrors.pod.cont.html DBIx::Recordset is tested with (but should also work with other DBMS) - DBD::mSQL - DBD::mysql - DBD::Pg - DBD::Solid - DBD::ODBC - DBD::Oracle - DBD::Sybase - DBD::CSV - DBD::Informix SYNOPSIS use DBIx::Recordset; # Setup a new object and select some recods... *set = DBIx::Recordset -> Search ({'!DataSource' => 'dbi:Oracle:', '!Table' => 'users', '$where' => 'name = ? and age > ?', '$values' => ['richter', 25] }) ; # Get the values of field foo ... print "First Records value of foo is $set[0]{foo}\n" ; print "Second Records value of foo is $set[1]{foo}\n" ; # Get the value of the field age of the current record ... print "Age is $set{age}\n" ; # Do another select with the already created object... $set -> Search ({name => 'bar'}) ; # Show the result... print "All users with name bar:\n" ; while ($rec = $set -> Next) { print $rec -> {age} ; } # Setup another object and insert a new record *set2 = DBIx::Recordset -> Insert ({'!DataSource' => 'dbi:Oracle:', '!Table' => 'users', 'name'=> 'foo', 'age' => 25 }) ; # Update this record (change age from 25 to 99)... $set -> Update ({age => 99}, {name => 'foo'}) ; Changes since 0.23: - Added Code to DBIx::Database to Create/Modify/Drop tables See CreateTables/DropTables - *fieldname can take an array ref, to specify different operators for multiple values which should compared to the same field. This is handy for selecting a range. - Filters are correctly apply if a arrayref with multiple value are passed to a SELECT. - Reset error code and string in DBIx::Database -> new - If an array of values id passed in for one field and the operator is '=' now the IN sql operator is used, instead of a set of '='. - Set Postgres type 1005 to not numeric. Spotted by Michael Maruka. - Ignore errors in ListFields when retrieving metadata for a table. - Statement handle is closed as soon as possible, to avoid out of cursors situations. - new parameter $expr allow to group multiple
Re: PerlInitHandler and PerlSetEnv
> > > Embperl doesn't need them before the fixup phase, but sometimes you want > > different values for the environment variables for different directories, > > which doesn't work with SetEnv > > really? glancing at mod_env.c looks like it should work. > The docs says: SetEnv directive Syntax: SetEnv variable value Context: server config, virtual host Status: Base Module: mod_env Compatibility: SetEnv is only available in Apache 1.1 and later. Sets an environment variable, which is then passed on to CGI scripts and SSI pages. Example: There is no "directory, .htaccess" in the context and that's like it really behaves. (unless they changed it in a very recent version and didn't update the docs, which I don't expect) PerlSetEnv is the only chance to have different values in different directories. > > Thanks for the fast fix > > would have been sooner but i was on an airplane the past 6 hours :) > Then you are even faster :-) Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: PerlInitHandler and PerlSetEnv
> this patch should fix the problem. Yes, this fixes the problem :-) > you should also be able to > s/PerlSetEnv/SetEnv/g, unless Embperl needs these variables before the > fixup phase. > Embperl doesn't need them before the fixup phase, but sometimes you want different values for the environment variables for different directories, which doesn't work with SetEnv Thanks for the fast fix Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache::SimpleTemplate (don't do it!)
> > to clarify what i mean by 'simple': > - trivial to install and to use That's important > - small disk footprint > < 10 modules total. preferably 1 disks are cheap, so it doesn't matter if you take one or two MB > - small memory footprint > this is usually the first bottleneck i see with > mod_perl. i don't know how big these others > systems get, but with the high numbers of modules... As soon as you start to precompile the Perl code inside your template, your memory footprint will increase and will be much more than what your module takes. If you don't precompile the Perl code you will never get a good performance for bigger pages. > - fast, with little overhead to begin with. > just because they're mod_perl, does not mean they're > fast enough. see above. > - very basic non-syntax > it's either code or it's not. no added tags, etc. That's a matter of taste > - extensibility via sub-classing. > This makes sense, but Perl methods are not the fasted solution, so you may decide, do you want a good design are a fast one... > i really think these criteria are reasonable, and that > there should be such a minimal approach available. > (i just did some quick tests against Embperl, and my > memory and speed concerns are justified.) > Before you don't have a real application that does more the "Hello World" , nothing is justified. (and I can't imagine how you have tested it with a real application, when it is a "quick test") (If you want to test against Embperl you should use 2.0b3 which is much faster then 1.3.x!) Of course I can be fast, when I do nearly nothing, but if you want to create applications, that do more then just mailing a form, you have to do a lot of things more and all those things will take time and memory, regardless if your template system does them for you, or if you reinvent them again for every web application you write. > most projects may still be better off using Embperl, > Mason, ASP, TT from the beginning. But all should not > be forced to just because others had bad experiences > when they started out with a basic templating scheme. > > i am still waiting for some direct positive feedback, > though. :) > It's your decision, but I think you waste your time while you make all the experiences the other had made during the last 3-5 years. I think it would more helpfull if you help to improve the other modules (for example makeing them easier to install etc.) ...but I know that's useless to say, mostly everybody has to write his own templating solution... Gerald P.S. I guess we would have much better ones, if we don't have hundreds of them all doing nearly the same ! - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: HTML::Embperl 2.0b3
> /usr/bin/pod2man: Invalid man page - 1st pod line is not NAME in IntroD.pod > Couldn't install blib/man3/HTML::Embperl::IntroD.3 That are only warnings about the docs, but perldoc foo for example perldoc HTML::Embperl::IntroD will still work. So nothing to worry about. I try to fix this in the next release Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: problems compiling Embperl 1.3.3 on MacOS X 10.0.4
Hi, unfortunately I don't know anything about MaxOS X. The only idea I have, is to look at other Perl modules, that compiles successfully, Makefile/Makefile.PL and see where the differences is. Do you try to compile with or without mod_perl support ? I think you should start without mod_perl support, because with mod_perl it will need to link against Apache and this may cause problems. Let me know if you find anything new! Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - - Original Message - From: "Gustav Kristoffer Ek" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, July 06, 2001 4:08 PM Subject: problems compiling Embperl 1.3.3 on MacOS X 10.0.4 When I try compiling Embperl, it dies when it comes to blib/arch/auto/HTML/Embperl/Embperl.bundle: cc -o blib/arch/auto/HTML/Embperl/Embperl.bundle -bundle -undefined suppress Embperl.o epmain.o epio.o epchar.o epcmd.o eputil.o epeval.o epapinit.o /usr/bin/ld: multiple definitions of symbol _embperl_module Embperl.o definition of _embperl_module in section (__DATA,__common) epmain.o definition of _embperl_module in section (__DATA,__common) epio.o definition of _embperl_module in section (__DATA,__common) epchar.o definition of _embperl_module in section (__DATA,__common) epcmd.o definition of _embperl_module in section (__DATA,__common) eputil.o definition of _embperl_module in section (__DATA,__common) epeval.o definition of _embperl_module in section (__DATA,__common) epapinit.o definition of _embperl_module in section (__DATA,__data) Any thing I can do to bugtraq and resolve this? - gustav -- Gustav Kristoffer Ek, Netcetera, Brolæggerstræde 4, 1211 København K +45 33147000, +45 2045, fax +45 33146200 http://www.netcetera.dk/
Re: comparison of templating methods?
> > > >Such things could be solved by using DBIx::Recordset for database access and > >define some filters, which are able to transform the content of a field > >to/from format you need it. > > Well, that assumes everything is a database... "everything I think I see, > looks like a database to me..." > > If you look at PHP's GPC model and then realize that it goes farther into > allowing other datasources such as S or a DB or a secondary DB if the first > one is empty for that field, then you'll see that abstracting it in a > common way rather than a DBI-specific view is much more powerful and is > something that applications do occasionally have to do. > > Writing a filter is doable but really kind of a hack really. > I didn't meant a filter, that filters the html page, that would really be a hack. What DBIx::Recordset can do is have a filter for every database field, which does the data conversion (for example to and from a human readable dateformat). Of course that's only for database access, but it's out there for some years and does a good job in many projects for me. That doesn't mean that there aren't many things that could be done more general, but somebody has to do it I looking forward to the widget library to see which problems it solves. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: comparison of templating methods?
> At 02:26 PM 6/7/2001 +1000, Steve Smith wrote: > > > HTML::Embperl > > > >For me, this has one major win over the other toolkits: auto form > >population from a hash. The online mortgage application system I > >wrote has about 1,800 form fields, which have to be populated with > >data from a database. By making the form fields match DB column > >names, I can reduce the code to do this to: > > > >my $data = $dbh->fetchrow_hashref($query); > >%fdat = (%fdat, %$data); > > > >Embperl then parses the form and populates it with the matching > >name=>value pairs in %fdat, including select options. Beautiful! > > Not that it's a reality now, but this is one of the things that the Perl > Widget Library project on source forge is hoping to accomplish for template > languages. It's a cross template way of organizing form information and map > it to db fields. > > The reality is that there are many fields that cannot map easily 1-1 to a > database as you say. eg a date in a database is usually a date field. But > in a form, it might be a combination of 3 form fields (dropdown for month, > year and day separately). > Such things could be solved by using DBIx::Recordset for database access and define some filters, which are able to transform the content of a field to/from format you need it. Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: comparison of templating methods?
> > regarding the tools that dovetail into the mod_perl paradigm, > who's got a comparison over relative performance (and other > strengths/weaknesses) of various templating methods? > There are various discussions on the mod_perl list about this topic in the past (so take a look at the archives). Also there was an start to write such a comparsion, but I am not aware that anybody has really finished it. The only benchmarks I know are from Joshua. I append his mail below. NOTE: While the hello.xxx benchmarks only prints "Hello world", so they only measures the startup overhead of the toolkit, the h2000.xxx tests tends a little bit more towards a real application. Gerald - Original Message - From: "Joshua Chamas" <[EMAIL PROTECTED]> To: "Mod Perl" <[EMAIL PROTECTED]> Sent: Saturday, January 06, 2001 12:37 PM Subject: Linux Hello World 2000, Results In!! > Hey, > > The Hello World 2000 benchmark is complete, and my results are below > along with the Hello World benchmark. Please feel free to contribute > h2000 benchmarks for any environment, or suggest changes for those > in the test suite, download at http://www.chamas.com/bench/hello.tar.gz > > The h2000 bench is geared toward web apps with templates. > > Please note that I couldn't get a java String->Int type cast right, > so fudged one line in the h2000.jsp ( fix? ) Also note, as seen > below, I am using the latest versions of PHP & IBM's Java, but not > of perl, so the results may not be fair in comparing the languages > on my platform. > > --Josh > > ]# ./bench.pl -version -time=60 ( -h for help ) > > Test Name Test File Hits/sec Total Hits Total Time sec/Hits Bytes/Hit > -- -- -- -- -- -- > Apache::ASP v2.07 2000 h2000.asp 228.0 13687 hits 60.03 sec 0.004386 28997 byte > HTML::Embperl v2.0a18 2000 h2000.epl 247.3 14846 hits 60.04 sec 0.004044 28809 byte > HTML::Mason v0.895 2000h2000.mas 222.9 13378 hits 60.01 sec 0.004485 28798 byte > mod_caucho JSP 2000h2000.jsp 328.9 19741 hits 60.03 sec 0.003041 28964 byte > mod_php PHP 2000 h2000.php 261.8 15717 hits 60.04 sec 0.003820 28865 byte > Template v2.00 Toolkit 2000h2000.tt 55.6 3336 hits 60.01 sec 0.017987 2 byte > Apache::ASP v2.07 hello.asp 390.6 23444 hits 60.01 sec 0.002560 241 bytes > Apache::Dispatch v0.08 handler hello/worl 656.1 39374 hits 60.01 sec 0.001524 196 bytes > Apache::ePerl hello.eper 344.8 20687 hits 60.00 sec 0.002900 217 bytes > Apache::Registry v2.01 CGI Raw hello_raw. 706.4 42394 hits 60.02 sec 0.001416 52 bytes > Apache::Registry v2.01 CGI.pm hello.reg 458.5 27529 hits 60.03 sec 0.002181 216 bytes > Apache::SSI v2.16 hello.shtm 559.4 33571 hits 60.01 sec 0.001788 199 bytes > HTML statichello.html 1158.4 5 hits 43.16 sec 0.000863 311 bytes > HTML::Embperl v2.0a18 hello.epl 458.2 27496 hits 60.01 sec 0.002183 219 bytes > HTML::Mason v0.895 hello.mas 365.3 21925 hits 60.02 sec 0.002737 197 bytes > HTML::Template v2.0hello.htmp 567.2 34041 hits 60.01 sec 0.001763 198 bytes > mod_caucho JSP hello.jsp 860.6 5 hits 58.10 sec 0.001162 230 bytes > mod_include SSIhello.shtm 996.6 5 hits 50.17 sec 0.001003 198 bytes > mod_perl handler hello.benc 852.6 5 hits 58.64 sec 0.001173 196 bytes > mod_php PHPhello.php 734.8 44095 hits 60.01 sec 0.001361 225 bytes > Template v2.00 Toolkit hello.tt522.1 31338 hits 60.02 sec 0.001915 198 bytes > > Apache Server Header Tokens > --- > (Unix) > Apache/1.3.14 > OpenSSL/0.9.6 > PHP/4.0.3pl1 > Resin/1.2.1 > mod_perl/1.24 > mod_ssl/2.7.1 > > PERL Version: 5.00503 > > JAVA Version: java version "1.3.0" > Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0) > Classic VM (build 1.3.0, J2RE 1.3.0 IBM build cx130-20001124 (JIT enabled: jitc)) > > Operating System: Linux 2.2.14-5.0smp (root@porky) (gcc egcs-2.91.66) #1 2CPU [gate] > >
ANNOUNCE: HTTP::Webdav - Perl interface to Neon HTTP and WebDAV client library
This is the Perl interface to the neon HTTP and WebDAV client library. Also not strictly related to mod_perl, I think it would be interesting for the people here. It can be downloaded from ftp://ftp.dev.ecos.de/pub/perl/webdav/HTTP-Webdav-0.1.10-0.15.0.tar.gz neon has the following features: - High-level interface to HTTP and WebDAV methods (PUT, GET, HEAD etc) - Low-level interface to HTTP request handling, to allow implementing new methods easily. - HTTP/1.1 and HTTP/1.0 persistent connections - RFC2617 basic and digest authentication (including auth-int, md5-sess) - Proxy support (including basic/digest authentication) - Generic WebDAV 207 XML response handling mechanism - XML parsing using the expat or libxml parsers - Easy generation of error messages from 207 error responses - WebDAV resource manipulation: MOVE, COPY, DELETE, MKCOL. - WebDAV metadata support: set and remove properties, query any set of properties (PROPPATCH/PROPFIND). WARNING: This wrapper is alpha code, while neon is around for some time and stable to use, not all of the interface functions provided by this Perl module has been tested extensivly, but most of them should work without problems (At least they do it for me :-). Enjoy Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: HTML::Embperl 1.3.3
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/HTML-Embperl-1.3.3.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/HTML-Embperl-1.3.3.tar.gz size: 345235 bytes md5: f2a4579210f7797e1ff4d756f3b7e037 Embperl 1.3.2 is current stable version and this release contains mainly bugfixes and a few enhancements. Development of new features is going on in Embperl 2.0 for which I expect to release 2.0b3 in a few days. Embperl is a system for building dynamic websites with Perl. It gives you the power to embed Perl code in your HTML documents and the ability to build your Web site out of small reusable objects in an object-oriented style. You can also take advantage of all the usual Perl modules, (including DBI for database access) use their functionality and easily include their output in your web pages. Embperl has several features which are especially useful for creating HTML, including dynamic tables, form field processing, URL escaping/unescaping, session handling, and more. See http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/ (german) for more information. Enjoy Gerald Changes since 1.3.2: - fixes problem with cleanup and Perl 5.6.0+ which broke session management. Spotted by Lukas Zapletal and Andy Lim. - Improved Makefile.PL to catche more setup situation on Win 32. - Make $r -> Error settable to be able to reset Embperl's internal error flag. - workaround for $r -> chdir_file not working correctly inside of Apache::Registry with ActiveState Perl, which caused make test to fail. - fixed SIGSEGVs that could occur on rare situations when multiple file not found errors are reported. - fixed problem with wrong setup of Content-Length header when running in CGI mode, with escmode = 0. Spotted by Edwin Ramirez. - fixed problem with nested dynamic tables and Execute. - added correct errror message for rcNotCompiledForModPerl. Spotted by Scott Chapman. ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: HTML::Embperl 1.3.2
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/HTML-Embperl-1.3.2.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/HTML-Embperl-1.3.2.tar.gz size: 341834 bytes md5: 3ba1d6ecd5958a45ab1a8819517e7672 Embperl 1.3.2 is current stable version and this release contains mainly bugfixes and a few enhancements. Development of new features is going on in Embperl 2.0 for which I expect to release 2.0b3 in a few days. Embperl is a system for building dynamic websites with Perl. It gives you the power to embed Perl code in your HTML documents and the ability to build your Web site out of small reusable objects in an object-oriented style. You can also take advantage of all the usual Perl modules, (including DBI for database access) use their functionality and easily include their output in your web pages. Embperl has several features which are especially useful for creating HTML, including dynamic tables, form field processing, URL escaping/unescaping, session handling, and more. See http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/ (german) for more information. Enjoy Gerald Changes since 1.3.1: - Emulate the syntax => Text parameter of Embperl 2.0, which allows to include pure text files any without interpretation. Requested by Kee Hinckley. - Fixed problem with corrupted @ISA, that had occured when a page was first requested without EmbperlObject and then with EmbperlObject. - Catch exceptions inside of Embperl.pm and correctly cleanup the request. This avoids problems in further request in case anything was really going wrong. - If the base template in an EmbperlObject request is requested directly the Execute ('*') does nothing, to avoid endless recursion. - Fixed bug in SetSessionCookie which had called undefined method getinitalid. Spotted by Sun Choi. - Removed wrong expire setting from SetSessionCookie, spotted by Michael Stevens. - Additions to IntroEmbperlObject.pod by Neil Gunton. - ';' is now accepcted as separator for query strings addtionaly to the '&' character. Patch from Brent A. Ellingson. - ';' is now escaped to %3B when outputed inside a URL. - Embperl is now added to the Serversoftware identification when preloaded under mod_perl. - adapted make test to Perl 5.6.1 and 5.7.1 so now it passes sucessfully. - fixed problem with cleanup in threaded Perl 5.6.1 and higher - added pod documentation to embperl.pl. Patch from Angus Lees. - %http_headers_out can take now array refs as elements to set multiple headers of the same value. Patch from Maxwell Krohn. - Non module-documenations (like Intro.pod Faq.pod etc) now gets copied under the correct directory and man pages are generated with the correct name (e.g. perldoc HTML::Embperl::Intro works now after installation). Based on an idea from Angus Lees. - Makefile.PL enhancements for Apache/ActiveState binary distribution - quote pathnames in Makefile to allow directories like "Program Files". Spotted by Lukas Zapletal. - Added epocgi.pl which allow use of EmbperlObject as CGI script. - Added a dTHR to function CmdVar to make Embperl compile with threaded Perl 5.005. Patch from Michael George III. - EMBPERL_SESSION_ARGS can now accept pathes with spaces inside by quoteing an argument e.g. PerlSetEnv EMBPERL_SESSION_ARGS "'Directory=/Session Files/'". Spotted by Lukas Zapletal. - Perl search path (@INC) in make test is set to abosulte paths to be independend of directory changes that Apache might issue. Spotted by Randy Korbes. - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: HTML::Embperl 2.0b2
- New [$ syntax $] metacommand can switch the syntax of the file on the fly. It's also usefull to load addtional taglibs. - print OUT works again - HTML comments are not touched anymore - Embperl doesn't log a warning if a undefined value is in %ENV and dbgEnv is on. - 2.0b2 now contains all contains all changes up to 1.3.2 . Enjoy Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
ANNOUNCE: HTML::Embperl 1.3.1
The URL ftp://ftp.dev.ecos.de/pub/perl/embperl/HTML-Embperl-1.3.1.tar.gz has entered CPAN as file: $CPAN/authors/id/G/GR/GRICHTER/HTML-Embperl-1.3.1.tar.gz size: 328406 bytes md5: e58778ddd2e56ef129220a416818a525 The main improvements in this release is in EmbperlObject, which has made more stable and reliable. Also an tutorial for EmbperlObject has been added to the release. Embperl gives you the power to embed Perl code in your HTML documents and the ability to build your Web site out of small reusable objects in an object-oriented style. You can also take advantage of all the usual Perl modules, (including DBI for database access) use their functionality and easily include their output in your web pages. Embperl has several features which are especially useful for creating HTML, including dynamic tables, form field processing, URL escaping/unescaping, session handling, and more. See http://perl.apache.org/embperl/ (english) or http://www.ecos.de/embperl/ (german) for more information. Enjoy Gerald Changes since 1.3.0: - Added new Introduction to EmbperlObject written by Neil Gunton. See perldoc IntroEmbperlObject - Added new Tips and Tricks pod written by Neil Gunton. See perldoc TipsAndTricks. Anybody is invited to send me their own Tips and Tricks! - Added object and isa parameters to Execute, which allows to get an object reference for a certain file and set the Perl inherence hierachive. Ideas from Neil Gunton and Angus Lees. - Corrected a problem that leads to very strange errors when an Embperl sub is called from an in memory source (that is passed via the Execute input parameter). Spotted by Neil Gunton. - Make EmbperlObject work better with relative paths and drive letters on Windows. Based on a patch from Freddy Vulto. - Fixed a problem with the cache key, which could cause that the same file is compiled within different packages. - Fixed a problem that Embperl are in a wired state after an file upload has been interrupted. Spotted by Dirk Lutzebaeck. - Fixed a problem set @ISA is not correctly setup in case a file is compiled in the same package as the base file of EmbperlObject. Spotted by Neil Gunton. - Fixed problem with including ../foo.html in EmbperlObject. Spotted by Neil Gunton. - Added warning if @ISA is not correctly setup/corrupted. - Fixed a SIGSEGV that occurs when an reference to undef is returned from a [+ +] inside a URL. - Added warning to Makefile.PL, if File::Spec 0.82 isn't installed, which is required by EmbperlObject. - Fixed "use of undefined value" warning in make test ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: TPC5: mod_perl track: Call For Papers
Hi Stas, > back to work...sorry for not replying earlier, I prefer my vacations to be > real ones :) > Yes, of course ! I hope you had a good holiday ! > > I suppose we could link from the main site, but I guess it's quite useless > now. Yes, now we are too late... > Anyway, I suppose that most of the potential speakers are on the > list. > Yes, I guess so > If anybody submits his proposal thru the main vein, Nat will redirect it > to us anyway, so no problem here. We are going to handle only the talks > and tutorials anyway. Papers are handled by Nat and his team. > ok. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: mod perl and embperl
> > I have installed mod_perl as a DSO for apache, everything is ok! > Now i am in need for embperl, the problem begins when i perl > Makefile.PL, it asks me for apache source! > Since i have every apache module as DSO i have deleted everything > related to apache. > > Hoe to enable embperl with mod_perl ? > Embperl needs only the header files, not the whole source. Apache normaly installs these headers under include (e.g. /usr/local/apache/include), specify this directory when asked for the sources and it should work. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: TPC5: mod_perl track: Call For Papers
Hi Stas, > Ok, the CFP is officially out, let those proposals come in: > > All the details can be found here: > http://perl.apache.org/conferences/tpc5-us/cfp.html > I didn't found a link from anywhere to that page. I don't think it was your intention to hide that page. Shouldn't at least on http://perl.apache.org and on http://conferences.oreilly.com/perl5/ a link point the people, who wants to submit something mod_perl related, to that page ? I guess the intention was that _all_ mod_perl related things are submitted to email there and not to the official tpc5 address, is this right? Gerald > Notice that while our cfp resembles the general CFP > http://conferences.oreilly.com/perl5/ it's not the same, so don't confuse > the two. Ours has the magic mod_perl token on the top :) > > I think I've summarized the last CFP thread into a pretty long wishlist of > topics. If something is missing and you think it's relevant to mod_perl > and interesting to the hear about submit as well. > > Thank you for your support! Looking forward to meeting you all in person > at ApacheCon and TPC5. > > _ > Stas Bekman JAm_pH -- Just Another mod_perl Hacker > http://stason.org/ mod_perl Guide http://perl.apache.org/guide > mailto:[EMAIL PROTECTED] http://apachetoday.com http://logilune.com/ > http://singlesheaven.com http://perl.apache.org http://perlmonth.com/ > > > > - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: do I really need "mod_perl"
> > Obviously, you know after reading the above link you don't need mod_perl to > run standard perl-written cgi's. One of the additional benefits not mentioned > in that article is Embperl. Embperl is a nifty little tool that let's you > embed server side interpreted perl in a normal .html document. Very handy > indeed! In order for Embperl to work, however, mod_perl must be installed. > Embperl can also run as standart CGI or offline, but under mod_perl it's much faster Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: ANNOUNCE: Embperl 2.0b1
> > > Since it's not yet ready for production use, it's only available from my ftp > > server at > > Hmm, with unstable software I prefer to use cvs upd more often, isn't > there a cvs repository anywhere? A stable version can also be fetched > from an FTP archive, but for development versions this is a bit painful. > It is a branch in the normal Embperl cvs. You can check it out with cvs -d :pserver:[EMAIL PROTECTED]:/home/cvspublic co -r Embperl2c embperl Gerald
ANNOUNCE: Embperl 2.0b1
&CACHE_KEY function that is called everytime before data is taken from the cache. If this funtion returns true, the data from the cache isn't used anymore, but rebuild. Function could be either a coderef (when passed to Execute), a name of a subroutine or a string starting with "sub " in which case it is compiled as anoymous subroutine. expires_in / EMBPERL_EXPIRES_IN / $EXPIRES Time in seconds that the output schould be cached. (0 = never, -1 = forever) - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: SetupConfDa.al
Embperl wasn't installed at all before, to get the newest version from CPAN was the correct solution. > I suspected I might need to upgrade my Embperl, so I > fired off the old 'perl -MCPAN -e shell' and tried to 'install > HTML::Embperl'... the only problem is that during the test phase, it keeps > crapping out on the chdir.htm test, and so won't install without a force. Could you run the tests with make test TESTARGS="-i" this will continue after the failed chdir test. If the chdir test is the only test that fails, there should be no problem to install and use Embperl. The chdir test fails on some platforms (namly solaris maybe others) and I didn't have a chance to track down why. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Linux Hello World Benchmarks: +PHP,JSP,ePerl
> For the raw benchmarks... > > OK, I finally got a little time to download and read some the hello.tar.gz. > > It's good to see TT is fairly fast. But it's a shame that the only way to > get faster than PHP is to write a raw Mod_perl handler according to the > benchmarks. All the other mod_perl tools seem slower. > Everybody looking at this tests should be aware that it only test the startup/setup overhead for a "null" request. The Hello World actualy does nothing, so it highly depends on what features are initialized at the start of the request, it even makes a difference if different systems sends a different number of response http headers. For this reason this benchmarks are _not_ a comparision of the speed of the different systems which would manifest in real life. To get some usefull numbers there must be tests for very different situations, at least with some dynamic content in it (Joshua is working on that), another one with database access and for example some session management to have persistent data. There are more factors, for example the possibility of some systems to cache the generated output, the possibility to build your page out of many components... But even if somebody will generate such a huge benchmark suite there are so many factors, so they are very difficult to compare. Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: HTML::Embperl::Execute modifying 'output' only once
> > I wrote some code for a forum, that displays user entered text, > turning all URLs found into real links. Here it is: > > [- @t = split(/\x0d\x0a/, $message); $r = ''; >{ > local $/ = "\x0d\x0a"; # for chomp below > for($i=0;$i < scalar @t;$i++) { >$out = ''; $t = $t[$i]; >HTML::Embperl::Execute({'escmode' => 1, >'input' => \$t, >'output' => \$out, >'mtime' => undef}); >chomp $out; >$out =~ s@((?:ftp|http|news)://[^ ]*[^ .,:;!?<>()])@<A > HREF="$1">$1</A>@gi; >$r .= "<BR>\n" if $r; >$r .= $out; > } >} -] >[+ local $escmode=0; $r +] > > > It may not be optimal, but it works well. I tried to put that code in > a Perl module, since it looks quite reusable: > > package XXX; > use strict; > use lib qw(..); > use Exporter (); > use HTML::Embperl (); > use vars qw(@ISA @EXPORT_OK); > @ISA = qw(Exporter); > @EXPORT_OK = qw(UserText); > > sub UserText($) { > my($Text) = @_; > { > local $/ = "\x0d\x0a"; # for chomp below > return join("\n", > map { my $out; > HTML::Embperl::Execute({'escmode' => 1, > 'input' => \$_, > 'output' => \$out, > 'mtime' => undef}); > chomp $out; > $out =~ s@((?:ftp|http|news)://[^ ]*[^ .,:;!?<>()])@ HREF="$1">$1@gi; > $out } > split(/\x0d\x0a/, $Text) > ); > } > } > > 1; > Why do you Execute every line spepartely? Why not just process the while file at once. That will be much faster... > It looks like HTML::Embperl::Execute() only modifies $out during the > first loop. > You should give a name to your code for Embperl cache management. Try to add the inputfile parameter and set it a any value HTML::Embperl::Execute({'escmode' => 1, 'input' => \$_, 'output' => \$out, 'inputfile' => 'mycode'}); Also you can leave out the mtime => undef (but it doesn't hurt) Gerald - Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 -
Re: Apache::Session benchmarks
> Gerald Richter sent the following bits through the ether: > > > That only works if the session id already exists. If the session id doesn't > > exists, Apache::Session will throw an exception (die) > > The documentation implies that is it currently possible to do so. But the perl code shows that it doesn't work. For example Store/DBI.pm in the function materialize die's when it doesn't find the row with the id you given in the database. It's the same for other Stores. > I'd > love for it to be possible to do so, but I can't seem to contact > Jeffrey. Was it a complicated patch? > it overrides the the TIEHASH method in Session.pm. It wasn't too hard, but I don't have a patch for Session.pm that comes with Apache::Session 1.53, but you can simply use HTML::Embperl::Session instead of Apache::Session, which works with Apache::Session 1.00 and 1.5x and which should work also outside of Embperl. perldoc HTML::Embperl::Session shows the additional attributes you can pass to tie. The rest remains the same as with Apache::Session. Gerald
Re: Apache::Session benchmarks
> > > Question: does anyone know how to pre-specify the _session_id for the > > session, rather than allowing Apache::Session to set it and read it? I saw > > some posts about it a while back, but no code... > > Isn't it just this? > > tie %session, 'Apache::Session::Foobar', $id; > That only works if the session id already exists. If the session id doesn't exists, Apache::Session will throw an exception (die) I run into the same problem with Embperl. I send a patch against Apache::Session to Jeffery to allow this (and other things), but he didn't incorporated it and instead created a separte class for it. Since it was easier to maintain this class is now part of the Embperl distribution. HTML::Embperl::Session is a sub class of Apache::Session and allows you to specify the id, even if it doesn't already exists, along with a set of flags what to do in various cases (create new one, if the id doesn't exists; create the specified id or die) Gerald
Re: [ANNOUNCE] new site: scaling mod_perl (+tool: mod_perl + DBD::Oracle)
> 2. Caching techniques. I know that this is a topic that has been somewhat > beaten to a pulp on this list, but it keeps coming up, and I don't know of > any place where the current best thinking on the subject has been > synthesized. I haven't used any caching techniques yet myself, but I intend > to begin caching data at the mod_perl tier in the next version of my > application, so I have a very good incentive to synthesize and benchmark > various techniques. If folks could just send me pointers to various caching > modules and code, I'll test them in a uniform environment and let folks know > what I come up with. Or, if someone has already done all that work of > testing, I'd appreciate if you could point me to the results. I'd still like > to run my own tests, though. > Embperl 2.0 will have build in caching. I hope to release the first beta during the next week Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925131 WWW:http://www.ecos.de Fax: +49 6133 925152 - - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [OT] Slow Mailing List
> Anyway, if the list is slow here and if Apache.org is not willing to do > anything to fix it (but it looks like they are in a few weeks!) then I Be sure, they are already working on that, but it isn't done in few minutes... Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 - - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: how to setup the EMBPERL_MAILTOFROM?
> I'm working on a e-mail form, and would like to use the MailToFrom EmbPerl > module to do it. Can someone tell me what to add in the httpd.conf and > please provide me with some code snippets on how to integrate this thing > into the form. Thanks. > For an example look at http://perl.apache.org/embperl/Examples.html#input_htm . If you have an smtp server running on the same host, your are done, otherwise you should add a PerlSetEnv EMBPERL_MAILHOST mail.foo.com to your httpd.conf. See http://perl.apache.org/embperl/Embperl.pod.3.html#EMBPERL_MAILHOST where are the other possible conf parameters are described Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 - - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: enterprise mod_perl architectures
> Some of those folks don't read > this list regularly, and in that case, I'd be happy to email them/call them > directly if people could just point them my way. > I know that iii in London (www.iii.co.uk) use Embperl/mod_perl for there site and they generate about 1 million dynamic pages a day. For them I currently working on speeding up Embperl which will published as Embperl 2.0. I know they are working together with Tim Bunce to improve the database side. Maybe they are interessed in your project. > 3) Is there anyone who'd like to volunteer virtual space to host this? e.g. > ftp, web, creating a mailing list, etc. > I can do this, but I guess it also wouldn't be a problem to host this on perl.apache.org Gerald ----- Gerald Richterecos electronic communication services gmbh Internetconnect * Webserver/-design/-datenbanken * Consulting Post: Tulpenstrasse 5 D-55276 Dienheim b. Mainz E-Mail: [EMAIL PROTECTED] Voice:+49 6133 925151 WWW:http://www.ecos.de Fax: +49 6133 925152 - - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]