ANNOUNCE: Embperl 2.0b9

2003-06-09 Thread Gerald Richter
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

2003-03-15 Thread Gerald Richter
> >
> > 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

2003-03-06 Thread Gerald Richter
>
> 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

2003-03-03 Thread Gerald Richter

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?

2003-02-20 Thread Gerald Richter
>
> > 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

2003-02-15 Thread Gerald Richter
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

2003-01-16 Thread Gerald Richter



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

2002-12-04 Thread Gerald Richter
> 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

2002-11-30 Thread Gerald Richter
> 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

2002-11-28 Thread Gerald Richter
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

2002-11-28 Thread Gerald Richter
>
> 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

2002-11-11 Thread Gerald Richter
>
> 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

2002-11-11 Thread Gerald Richter


> 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

2002-11-01 Thread Gerald Richter


> 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

2002-10-23 Thread Gerald Richter - ecos gmbh
>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

2002-10-22 Thread Gerald Richter
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

2002-10-15 Thread Gerald Richter

>
> 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

2002-10-06 Thread Gerald Richter

>
> 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

2002-09-30 Thread Gerald Richter



> 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

2002-09-20 Thread Gerald Richter

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

2002-09-11 Thread Gerald Richter

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

2002-09-10 Thread Gerald Richter

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

2002-09-04 Thread Gerald Richter

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

2002-09-03 Thread Gerald Richter


>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

2002-08-26 Thread Gerald Richter

> 
> 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

2002-08-21 Thread Gerald Richter


>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

2002-08-15 Thread Gerald Richter


>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)

2002-08-15 Thread Gerald Richter

> > 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

2002-08-13 Thread Gerald Richter



> 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

2002-08-13 Thread Gerald Richter

>
> 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

2002-08-13 Thread Gerald Richter



> 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

2002-08-12 Thread Gerald Richter


>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

2002-08-12 Thread Gerald Richter


- 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

2002-07-31 Thread Gerald Richter

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

2002-07-09 Thread Gerald Richter


>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

2002-07-07 Thread Gerald Richter

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

2002-06-25 Thread Gerald Richter

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

2002-06-25 Thread Gerald Richter - ecos gmbh

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

2002-06-11 Thread Gerald Richter

> 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

2002-06-11 Thread Gerald Richter

> >
> > [% 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

2002-06-10 Thread Gerald Richter

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

2002-06-10 Thread Gerald Richter - ecos gmbh

> 
> 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

2002-05-28 Thread Gerald Richter

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

2002-04-09 Thread Gerald Richter

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

2002-03-20 Thread Gerald Richter

>
> 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

2002-03-20 Thread Gerald Richter

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

2002-03-13 Thread Gerald Richter
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

2002-03-05 Thread Gerald Richter

>
> 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

2002-03-05 Thread Gerald Richter

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

2002-02-26 Thread Gerald Richter

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

2002-01-21 Thread Gerald Richter

>
> 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

2002-01-21 Thread Gerald Richter

> 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

2002-01-07 Thread Gerald Richter

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

2002-01-04 Thread Gerald Richter

># 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)

2001-12-19 Thread Gerald Richter

> "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

2001-12-19 Thread Gerald Richter

> 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

2001-12-10 Thread Gerald Richter

>
> > 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

2001-12-05 Thread Gerald Richter

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

2001-11-27 Thread Gerald Richter

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

2001-11-27 Thread Gerald Richter

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

2001-11-20 Thread Gerald Richter
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

2001-11-20 Thread Gerald Richter

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

2001-10-19 Thread Gerald Richter

>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

2001-10-12 Thread Gerald Richter

>
> 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

2001-10-11 Thread Gerald Richter

> 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......

2001-10-01 Thread Gerald Richter

>
> 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

2001-10-01 Thread Gerald Richter

> 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

2001-09-11 Thread Gerald Richter

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

2001-08-22 Thread Gerald Richter

>
> 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

2001-07-17 Thread Gerald Richter

> 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

2001-07-10 Thread Gerald Richter

> >
> > 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

2001-07-09 Thread Gerald Richter
sub expressions in
a sql where, therefore allowing more complex conditions.
  - Added new parameter !MergeFunc which allow to specify a function
that is called, when multiple records with the same key are found
in a DBIx::Recordset::Hash object.
  - Added some code to handle table- and fieldnames which include
spaces and special charaters. This is still experimental.
  - Fixed problem with !TableFilter setup
  - Set correct brackets when creating an left outer join. This is necessary
for some database to join more the two tables.


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: PerlInitHandler and PerlSetEnv

2001-07-09 Thread Gerald Richter

>
> > 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

2001-07-09 Thread Gerald Richter



> 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!)

2001-07-09 Thread Gerald Richter

>
> 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

2001-07-09 Thread Gerald Richter

> /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

2001-07-08 Thread Gerald Richter

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?

2001-06-11 Thread Gerald Richter

> >
> >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?

2001-06-08 Thread Gerald Richter



> 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?

2001-06-06 Thread Gerald Richter

>
> 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

2001-06-05 Thread Gerald Richter


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

2001-06-05 Thread Gerald Richter

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

2001-05-15 Thread Gerald Richter

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

2001-03-28 Thread Gerald Richter
   - 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

2001-02-12 Thread Gerald Richter

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

2001-01-28 Thread Gerald Richter

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

2001-01-17 Thread Gerald Richter

>
> 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

2001-01-15 Thread Gerald Richter

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"

2001-01-03 Thread Gerald Richter

>
> 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

2000-12-22 Thread Gerald Richter

>
> > 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

2000-12-22 Thread Gerald Richter
 &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

2000-12-21 Thread Gerald Richter

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

2000-12-17 Thread Gerald Richter



> 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

2000-12-15 Thread Gerald Richter

>
> 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

2000-12-12 Thread Gerald Richter



> 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

2000-12-12 Thread Gerald Richter

>
> > 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)

2000-12-08 Thread Gerald Richter

> 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

2000-12-07 Thread Gerald Richter

> 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?

2000-12-07 Thread Gerald Richter

> 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

2000-12-05 Thread Gerald Richter

> 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]




  1   2   3   4   5   >