Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread André Malo
On Wednesday 12 June 2013 21:18:05 Stefan Fritsch wrote:
> On Tuesday 11 June 2013, André Malo wrote:
> > >trunk patch: http://svn.apache.org/r1491155
> > >2.4.x patch: trunk patch works
> > >nd: why would you do that in a stable branch?
> > >
> > > +  sf: Because it is only annoying and serves no purpose
> > > anymore. If you +  want, we can make it a minor MMN bump
> > > for adding a "new" API. +1: sf, covener
> > >
> > >-1: nd
> >
> > Long discussions in STATUS are kinda tedious ;-)
> >
> > Well, I think, such changes are what trunk is for. Why not simply
> > leave  everything below as-is? Even more if it removes only an
> > annoyance? Or is there a real technical reason I'm just not seeing
> > right now?

[...]
>
> Or, is there a real technical reason to keep it broken in 2.4?

Annoying rhetoric games aside - we went from "only annoying" to "broken". What 
is it now?

No other opinion on this?

nd


Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread William A. Rowe Jr.
On Wed, 12 Jun 2013 21:18:05 +0200
Stefan Fritsch  wrote:

> It is a useful function. Disallowing it breaks ISO-C compliant code 
> for no good reason. There has been a complaint by a module author. 
> Allowing it does not use any memory because the function is already
> in libc. Working around the missing function requires additional
> code, which uses memory and may contain bugs. What more reasons do
> you need?

I'm +1... we should only perform such abuses of stdc / clib within
the scope of our own -private- headers.  Modifying these in our headers
meant for public consumption is a very irritating thing to do.  If
this were hidden in some CORE_PRIVATE scope then I would have been fine
with leaving things as is.



Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Rainer Jung
On 14.06.2013 16:41, André Malo wrote:
> On Wednesday 12 June 2013 21:18:05 Stefan Fritsch wrote:
>> On Tuesday 11 June 2013, André Malo wrote:
trunk patch: http://svn.apache.org/r1491155
2.4.x patch: trunk patch works
nd: why would you do that in a stable branch?

 +  sf: Because it is only annoying and serves no purpose
 anymore. If you +  want, we can make it a minor MMN bump
 for adding a "new" API. +1: sf, covener

-1: nd
>>>
>>> Long discussions in STATUS are kinda tedious ;-)
>>>
>>> Well, I think, such changes are what trunk is for. Why not simply
>>> leave  everything below as-is? Even more if it removes only an
>>> annoyance? Or is there a real technical reason I'm just not seeing
>>> right now?
> 
> [...]
>>
>> Or, is there a real technical reason to keep it broken in 2.4?
> 
> Annoying rhetoric games aside - we went from "only annoying" to "broken". 
> What 
> is it now?
> 
> No other opinion on this?

As far as I understand the matter, the block removed by the above commit
would throw a compiler error if code uses strtoul() and includes httpd.h.

The motivation was that at the time the block was introduced some
supported platforms, e.g. SunOS 4, did not have strtoul(), so it was
helpful to throw that error even when compiled on other platforms to
ensure compatibility.

The error will also be thrown for any 3rd-party code that uses strtoul()
and includes httpd.h when being compiled - so practically all modules
are prohibited to use strtoul().

The function is part of C89 which we assume as a minimum when compiling
Apache 2.4. So I do not see any positive effects of the old block. I do
recognize, that it breaks module compilation for modules using
strtoul(). So the proposed change removes an obstacle for full CC89
support in modules. Furthermore I can not imagine any risk of breaking
stuff that worked before removing the block.

Based on that I am +1 to remove the block.

Regards,

Rainer


Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Eric Covener
On Fri, Jun 14, 2013 at 10:41 AM, André Malo  wrote:
> On Wednesday 12 June 2013 21:18:05 Stefan Fritsch wrote:
>> On Tuesday 11 June 2013, André Malo wrote:
>> > >trunk patch: http://svn.apache.org/r1491155
>> > >2.4.x patch: trunk patch works
>> > >nd: why would you do that in a stable branch?
>> > >
>> > > +  sf: Because it is only annoying and serves no purpose
>> > > anymore. If you +  want, we can make it a minor MMN bump
>> > > for adding a "new" API. +1: sf, covener
>> > >
>> > >-1: nd
>> >
>> > Long discussions in STATUS are kinda tedious ;-)
>> >
>> > Well, I think, such changes are what trunk is for. Why not simply
>> > leave  everything below as-is? Even more if it removes only an
>> > annoyance? Or is there a real technical reason I'm just not seeing
>> > right now?
>
> [...]
>>
>> Or, is there a real technical reason to keep it broken in 2.4?
>
> Annoying rhetoric games aside - we went from "only annoying" to "broken". What
> is it now?
>
> No other opinion on this?

I think Stefan did it justice in the STATUS remark.  I don't really
understand the objection. Are you afraid a strtoul will sneak into one
of our modules, or that a module developer needs this macro to protect
them from it?

--
Eric Covener
cove...@gmail.com


Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread André Malo
On Friday 14 June 2013 17:34:26 Rainer Jung wrote:
> On 14.06.2013 16:41, André Malo wrote:
> > On Wednesday 12 June 2013 21:18:05 Stefan Fritsch wrote:
> >> On Tuesday 11 June 2013, André Malo wrote:
> trunk patch: http://svn.apache.org/r1491155
> 2.4.x patch: trunk patch works
> nd: why would you do that in a stable branch?
> 
>  +  sf: Because it is only annoying and serves no purpose
>  anymore. If you +  want, we can make it a minor MMN bump
>  for adding a "new" API. +1: sf, covener
> 
> -1: nd
> >>>
> >>> Long discussions in STATUS are kinda tedious ;-)
> >>>
> >>> Well, I think, such changes are what trunk is for. Why not simply
> >>> leave  everything below as-is? Even more if it removes only an
> >>> annoyance? Or is there a real technical reason I'm just not seeing
> >>> right now?
> >
> > [...]
> >
> >> Or, is there a real technical reason to keep it broken in 2.4?
> >
> > Annoying rhetoric games aside - we went from "only annoying" to "broken".
> > What is it now?
> >
> > No other opinion on this?
>
> As far as I understand the matter, the block removed by the above commit
> would throw a compiler error if code uses strtoul() and includes httpd.h.
>
> The motivation was that at the time the block was introduced some
> supported platforms, e.g. SunOS 4, did not have strtoul(), so it was
> helpful to throw that error even when compiled on other platforms to
> ensure compatibility.
>
> The error will also be thrown for any 3rd-party code that uses strtoul()
> and includes httpd.h when being compiled - so practically all modules
> are prohibited to use strtoul().
>
> The function is part of C89 which we assume as a minimum when compiling
> Apache 2.4. So I do not see any positive effects of the old block. I do
> recognize, that it breaks module compilation for modules using
> strtoul(). So the proposed change removes an obstacle for full CC89
> support in modules. Furthermore I can not imagine any risk of breaking
> stuff that worked before removing the block.
>
> Based on that I am +1 to remove the block.

I agree, that the block should simply die. However, I question the value of 
doing cosmetical changes in our stable branches (which is the justification 
in STATUS).

So the question in this specific case is: is it a cosmetical change or not?

nd


Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Jeff Trawick
On Jun 14, 2013 11:36 AM, "Eric Covener"  wrote:
>
> On Fri, Jun 14, 2013 at 10:41 AM, André Malo  wrote:
> > On Wednesday 12 June 2013 21:18:05 Stefan Fritsch wrote:
> >> On Tuesday 11 June 2013, André Malo wrote:
> >> > >trunk patch: http://svn.apache.org/r1491155
> >> > >2.4.x patch: trunk patch works
> >> > >nd: why would you do that in a stable branch?
> >> > >
> >> > > +  sf: Because it is only annoying and serves no purpose
> >> > > anymore. If you +  want, we can make it a minor MMN bump
> >> > > for adding a "new" API. +1: sf, covener
> >> > >
> >> > >-1: nd
> >> >
> >> > Long discussions in STATUS are kinda tedious ;-)
> >> >
> >> > Well, I think, such changes are what trunk is for. Why not simply
> >> > leave  everything below as-is? Even more if it removes only an
> >> > annoyance? Or is there a real technical reason I'm just not seeing
> >> > right now?
> >
> > [...]
> >>
> >> Or, is there a real technical reason to keep it broken in 2.4?
> >
> > Annoying rhetoric games aside - we went from "only annoying" to
"broken". What
> > is it now?
> >
> > No other opinion on this?
>
> I think Stefan did it justice in the STATUS remark.  I don't really
> understand the objection. Are you afraid a strtoul will sneak into one
> of our modules, or that a module developer needs this macro to protect
> them from it?
>
> --
> Eric Covener
> cove...@gmail.com

If I can interject randomly...

Give it a minor bump so module authors can hide their workarounds for older
httpd in a self-documenting way, and so there's a CYA if some very odd,
existing module workaround breaks unexpectedly...


Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Rainer Jung
On 14.06.2013 17:44, André Malo wrote:
> On Friday 14 June 2013 17:34:26 Rainer Jung wrote:
>> On 14.06.2013 16:41, André Malo wrote:
>>> On Wednesday 12 June 2013 21:18:05 Stefan Fritsch wrote:
 On Tuesday 11 June 2013, André Malo wrote:
>>trunk patch: http://svn.apache.org/r1491155
>>2.4.x patch: trunk patch works
>>nd: why would you do that in a stable branch?
>>
>> +  sf: Because it is only annoying and serves no purpose
>> anymore. If you +  want, we can make it a minor MMN bump
>> for adding a "new" API. +1: sf, covener
>>
>>-1: nd
>
> Long discussions in STATUS are kinda tedious ;-)
>
> Well, I think, such changes are what trunk is for. Why not simply
> leave  everything below as-is? Even more if it removes only an
> annoyance? Or is there a real technical reason I'm just not seeing
> right now?
>>>
>>> [...]
>>>
 Or, is there a real technical reason to keep it broken in 2.4?
>>>
>>> Annoying rhetoric games aside - we went from "only annoying" to "broken".
>>> What is it now?
>>>
>>> No other opinion on this?
>>
>> As far as I understand the matter, the block removed by the above commit
>> would throw a compiler error if code uses strtoul() and includes httpd.h.
>>
>> The motivation was that at the time the block was introduced some
>> supported platforms, e.g. SunOS 4, did not have strtoul(), so it was
>> helpful to throw that error even when compiled on other platforms to
>> ensure compatibility.
>>
>> The error will also be thrown for any 3rd-party code that uses strtoul()
>> and includes httpd.h when being compiled - so practically all modules
>> are prohibited to use strtoul().
>>
>> The function is part of C89 which we assume as a minimum when compiling
>> Apache 2.4. So I do not see any positive effects of the old block. I do
>> recognize, that it breaks module compilation for modules using
>> strtoul(). So the proposed change removes an obstacle for full CC89
>> support in modules. Furthermore I can not imagine any risk of breaking
>> stuff that worked before removing the block.
>>
>> Based on that I am +1 to remove the block.
> 
> I agree, that the block should simply die. However, I question the value of 
> doing cosmetical changes in our stable branches (which is the justification 
> in STATUS).
> 
> So the question in this specific case is: is it a cosmetical change or not?

We do cosmetical changes in stable branches like e.g. reducing code
drift between trunk and 2.4 or fixing typos in comments. We do it if we
see only very little risk and anticipate at least some benefit now or
for the future. In the case discussed here I'd say the risk is very
small and the benefit of a more complete c89 support for module authors
is real (but of course not big). I like the addition of the MMN bump
suggested by Jeff.

Regards,

Rainer




AW: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Plüm , Rüdiger , Vodafone Group


> -Ursprüngliche Nachricht-
> Von: Rainer Jung []
> Gesendet: Freitag, 14. Juni 2013 18:08
> An: dev@httpd.apache.org
> Betreff: Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS
> 
> We do cosmetical changes in stable branches like e.g. reducing code
> drift between trunk and 2.4 or fixing typos in comments. We do it if we
> see only very little risk and anticipate at least some benefit now or
> for the future. In the case discussed here I'd say the risk is very
> small and the benefit of a more complete c89 support for module authors
> is real (but of course not big). I like the addition of the MMN bump
> suggested by Jeff.

+1

Regards

Rüdiger



Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Jim Jagielski

On Jun 14, 2013, at 11:44 AM, André Malo  wrote:
> 
> I agree, that the block should simply die. However, I question the value of 
> doing cosmetical changes in our stable branches (which is the justification 
> in STATUS).
> 

FWIW, I agree. I don't mind such clean-ups and cosmetic changes
on trunk, but functional changes (and this is) require a backport
proposal.



Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Jim Jagielski

On Jun 14, 2013, at 12:07 PM, Rainer Jung  wrote:

> 
> We do cosmetical changes in stable branches like e.g. reducing code
> drift between trunk and 2.4 or fixing typos in comments.

Of course. That's not the question (at least IMO). The question
is that when a cosmetic change also results in a functional
change (and we wouldn't be suggesting MMN bumps if it wasn't),
that it becomes a change that should be proposed as a backport
and not willy-nilly added. We have a process, and should
discourage attempts to bypass it on a stable trunk.

FWIW, I'd be +1 with the bump.



Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Eric Covener
> Of course. That's not the question (at least IMO). The question
> is that when a cosmetic change also results in a functional
> change (and we wouldn't be suggesting MMN bumps if it wasn't),
> that it becomes a change that should be proposed as a backport
> and not willy-nilly added. We have a process, and should
> discourage attempts to bypass it on a stable trunk.

This change followed the process. It currently sits in 2.4.x/STATUS.


Re: svn commit: r1491612 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Jim Jagielski

On Jun 14, 2013, at 1:20 PM, Eric Covener  wrote:

>> Of course. That's not the question (at least IMO). The question
>> is that when a cosmetic change also results in a functional
>> change (and we wouldn't be suggesting MMN bumps if it wasn't),
>> that it becomes a change that should be proposed as a backport
>> and not willy-nilly added. We have a process, and should
>> discourage attempts to bypass it on a stable trunk.
> 
> This change followed the process. It currently sits in 2.4.x/STATUS.

I know... I voted on it :)

I was speaking in generalities... sorry for the confusion.


Where is configured the library used by Apache httpd server for the ldap_search_ext_s implementation?

2013-06-14 Thread Michael Furman


Dear Apache developers!
I want to understand where is configured the library used by
Apache httpd server for the ldap_search_ext_s implementation.

I looked at util_ldap.c:

http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/modules/ldap/util_ldap.c?view=markup



  result =
ldap_search_ext_s(ldc->ldap,

   (char *)basedn,
scope,

   (char *)filter,
attrs, 0,

   NULL, NULL,
NULL, APR_LDAP_SIZELIMIT, &res);

 

The method ldap_search_ext_s can be implemented by different
providers, include OpenLDAP, Novell LDAP SDK or iPlanet (Netscape) SDK.



Where Apache is configured to use OpenLDAP?

Thanks in advance for your help,

  Michael

  

Re: Where is configured the library used by Apache httpd server for the ldap_search_ext_s implementation?

2013-06-14 Thread Eric Covener
On Fri, Jun 14, 2013 at 3:45 PM, Michael Furman
 wrote:
> Dear Apache developers!
>
> I want to understand where is configured the library used by Apache httpd
> server for the ldap_search_ext_s implementation.
>
> I looked at util_ldap.c:
> http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/modules/ldap/util_ldap.c?view=markup
>
>   result = ldap_search_ext_s(ldc->ldap,
>
>(char *)basedn, scope,
>
>(char *)filter, attrs, 0,
>
>NULL, NULL, NULL, APR_LDAP_SIZELIMIT, &res);
>
>
>
> The method ldap_search_ext_s can be implemented by different providers,
> include OpenLDAP, Novell LDAP SDK or iPlanet (Netscape) SDK.
>

The flavor of LDAP SDK is detected when the "apr-util" dependency is configured:

srclib/apr-util$ ./configure --help|grep ldap
  --with-ldap-include=path  path to ldap include files with trailing slash
  --with-ldap-lib=pathpath to ldap lib file
  --with-ldap=library ldap library to use

If you build httpd, apr, and apr-util all at once you usually pass
these flags to httpd's configure script and they are passed down to
apr-util.

For recent releases, You can see the dependency baked into the
apr_ldap-1.so using ldd.


RE: Where is configured the library used by Apache httpd server for the ldap_search_ext_s implementation?

2013-06-14 Thread Michael Furman


Thank you for your reply!

I have found the following:



ldd /usr/lib64/apr-util-1/apr_ldap-1.so

…   

 libldap-2.4.so.2
=> /lib64/libldap-2.4.so.2 (0x7f337a64d000)

…   

and the following:

rpm -ql openldap | grep ".so"

...

/lib64/libldap-2.4.so.2

/lib64/libldap-2.4.so.2.5.6

...

I did not find anything related to /etc/httpd/conf/httpd.conf.

Should I add libldap-2.4.so.2 or apr_ldap-1.so to the file if I want to
use OpenLdap?

Or other configuration?

Thanks in advance for your help,

  Michael



> Date: Fri, 14 Jun 2013 15:50:56 -0400
> Subject: Re: Where is configured the library used by Apache httpd server for 
> the ldap_search_ext_s implementation?
> From: cove...@gmail.com
> To: dev@httpd.apache.org
> 
> On Fri, Jun 14, 2013 at 3:45 PM, Michael Furman
>  wrote:
> > Dear Apache developers!
> >
> > I want to understand where is configured the library used by Apache httpd
> > server for the ldap_search_ext_s implementation.
> >
> > I looked at util_ldap.c:
> > http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/modules/ldap/util_ldap.c?view=markup
> >
> >   result = ldap_search_ext_s(ldc->ldap,
> >
> >(char *)basedn, scope,
> >
> >(char *)filter, attrs, 0,
> >
> >NULL, NULL, NULL, APR_LDAP_SIZELIMIT, &res);
> >
> >
> >
> > The method ldap_search_ext_s can be implemented by different providers,
> > include OpenLDAP, Novell LDAP SDK or iPlanet (Netscape) SDK.
> >
> 
> The flavor of LDAP SDK is detected when the "apr-util" dependency is 
> configured:
> 
> srclib/apr-util$ ./configure --help|grep ldap
>   --with-ldap-include=path  path to ldap include files with trailing slash
>   --with-ldap-lib=pathpath to ldap lib file
>   --with-ldap=library ldap library to use
> 
> If you build httpd, apr, and apr-util all at once you usually pass
> these flags to httpd's configure script and they are passed down to
> apr-util.
> 
> For recent releases, You can see the dependency baked into the
> apr_ldap-1.so using ldd.
  

Re: Where is configured the library used by Apache httpd server for the ldap_search_ext_s implementation?

2013-06-14 Thread Eric Covener
> I did not find anything related to /etc/httpd/conf/httpd.conf.
> Should I add libldap-2.4.so.2 or apr_ldap-1.so to the file if I want to use
> OpenLdap?

I suggest taking the question to us...@httpd.apache.org


Re: svn commit: r1492395 - in /httpd/httpd/trunk: CHANGES modules/aaa/mod_auth_digest.c

2013-06-14 Thread Stefan Fritsch
On Thursday 13 June 2013, Roy T. Fielding wrote:
> On Jun 12, 2013, at 12:34 PM, s...@apache.org wrote:
> > Author: sf
> > Date: Wed Jun 12 19:34:19 2013
> > New Revision: 1492395
> > 
> > URL: http://svn.apache.org/r1492395
> > Log:
> > Actually use the secret when generating nonces.
> > 
> > This change may cause problems if used with round robin load
> > balancers. Before it is backported, we should add a directive to
> > use a user specified secret.
> > 
> > PR: 54637
> 
> FWIW, I don't think this code can be released as is.

I agree. That's what I wanted to express in the commit message, sorry 
if that did not come out correctly.


> Using a global pointer to an allocated pool variable is
> not even remotely safe when that pool gets deallocated.
> And a routine that gets called within .htaccess files is not an
> appropriate place to set a server-wide value.

It's the process pool, and that won't get cleaned up before server 
shutdown. And the secret will be initialized in post_config hook at 
the latest, so there is no chance that it will be called from 
.htaccess. But moving the whole thing to pre_config would be clearer 
and better. I will do that when I have some cycles.


> because that is where the real fix should be.  The current secret
> should be replaced here by a configurable string that is set in
> the virtual host config.

Ack. Though in absence of a configured value, the random secret is 
fine.

Cheers,
Stefan


Re: svn commit: r1492395 - in /httpd/httpd/trunk: CHANGES modules/aaa/mod_auth_digest.c

2013-06-14 Thread Stefan Fritsch
On Friday 14 June 2013, Stefan Fritsch wrote:
> > Using a global pointer to an allocated pool variable is
> > not even remotely safe when that pool gets deallocated.
> > And a routine that gets called within .htaccess files is not an
> > appropriate place to set a server-wide value.
> 
> It's the process pool, and that won't get cleaned up before server 
> shutdown. And the secret will be initialized in post_config hook
> at  the latest, so there is no chance that it will be called from
> .htaccess. But moving the whole thing to pre_config would be
> clearer and better. I will do that when I have some cycles.

FWIW, I now remember why I did it in this convoluted way. In 
pre_config, there is no way to get to the process pool. 2.4 has 
ap_retained_data_* which can be used instead, but in 2.2 it is not 
that easy. But we can fix that when/if there is actually momentum to 
backport this to 2.2.


Re: svn commit: r1493247 - /httpd/httpd/branches/2.4.x/STATUS

2013-06-14 Thread Stefan Fritsch
Hi André,

I consider this a new vote and therefore have removed your -1. If you 
still are -1, please add it to STATUS again.

On Friday 14 June 2013, s...@apache.org wrote:
> Author: sf
> Date: Fri Jun 14 21:07:19 2013
> New Revision: 1493247
> 
> URL: http://svn.apache.org/r1493247
> Log:
> update strtoul proposal to include a minor MMN bump. Keep jim's
> conditional vote
> 
> Modified:
> httpd/httpd/branches/2.4.x/STATUS


Re: asynch websockets tunnel

2013-06-14 Thread Eric Covener
On Wed, Jun 12, 2013 at 10:15 AM, Jim Jagielski  wrote:
> re-looking at this, it would be nice if we could abstract
> out the callback itself as simply "some event", where
> the callback and the baton itself is self-contained
> enuff to define what the event is... eg register_anevent_callback :)

FWIW I need to table this for a while if anyone is interested in
continuing/morphing it, i won't have any parallel local changes going
on.

(beginning a tough stretch at work & travel)


Re: asynch websockets tunnel

2013-06-14 Thread Jim Jagielski
Anyone opposed if I commit to trunk?

On Fri, Jun 14, 2013 at 06:04:36PM -0400, Eric Covener wrote:
> On Wed, Jun 12, 2013 at 10:15 AM, Jim Jagielski  wrote:
> > re-looking at this, it would be nice if we could abstract
> > out the callback itself as simply "some event", where
> > the callback and the baton itself is self-contained
> > enuff to define what the event is... eg register_anevent_callback :)
> 
> FWIW I need to table this for a while if anyone is interested in
> continuing/morphing it, i won't have any parallel local changes going
> on.
> 
> (beginning a tough stretch at work & travel)

-- 
===
   Jim Jagielski   [|]   j...@jagunet.com   [|]   http://www.jaguNET.com/
"Great is the guilt of an unnecessary war"  ~ John Adams


Re: asynch websockets tunnel

2013-06-14 Thread Graham Leggett
On 15 Jun 2013, at 12:40 AM, Jim Jagielski  wrote:

> Anyone opposed if I commit to trunk?

+1 to commit to trunk, that's where this stuff takes shape :)

Regards,
Graham
--



Re: asynch websockets tunnel

2013-06-14 Thread Eric Covener
On Fri, Jun 14, 2013 at 7:05 PM, Graham Leggett  wrote:
> On 15 Jun 2013, at 12:40 AM, Jim Jagielski  wrote:
>
>> Anyone opposed if I commit to trunk?
>
> +1 to commit to trunk, that's where this stuff takes shape :)

+1


Re: svn commit: r1492395 - in /httpd/httpd/trunk: CHANGES modules/aaa/mod_auth_digest.c

2013-06-14 Thread Roy T. Fielding
On Jun 14, 2013, at 2:16 PM, Stefan Fritsch wrote:
> On Thursday 13 June 2013, Roy T. Fielding wrote:
>> On Jun 12, 2013, at 12:34 PM, s...@apache.org wrote:
>>> Author: sf
>>> Date: Wed Jun 12 19:34:19 2013
>>> New Revision: 1492395
>>> 
>>> URL: http://svn.apache.org/r1492395
>>> Log:
>>> Actually use the secret when generating nonces.
>>> 
>>> This change may cause problems if used with round robin load
>>> balancers. Before it is backported, we should add a directive to
>>> use a user specified secret.
>>> 
>>> PR: 54637
>> 
>> FWIW, I don't think this code can be released as is.
> 
> I agree. That's what I wanted to express in the commit message, sorry 
> if that did not come out correctly.
> 
> 
>> Using a global pointer to an allocated pool variable is
>> not even remotely safe when that pool gets deallocated.
>> And a routine that gets called within .htaccess files is not an
>> appropriate place to set a server-wide value.
> 
> It's the process pool, and that won't get cleaned up before server 
> shutdown. And the secret will be initialized in post_config hook at 
> the latest, so there is no chance that it will be called from 
> .htaccess. But moving the whole thing to pre_config would be clearer 
> and better. I will do that when I have some cycles.

The original code did not need access to a pool -- it was
a static global array.  As near as I can tell, the reason you
changed that was just to check to see if it has already been
initialized, which can be done easily by making the first byte
a non-random, non-zero constant.  In spite of the name, this
value has almost no need to be secret, so reducing the number
of random bytes by one won't matter.

>> because that is where the real fix should be.  The current secret
>> should be replaced here by a configurable string that is set in
>> the virtual host config.
> 
> Ack. Though in absence of a configured value, the random secret is 
> fine.

I think it will cause horrible performance issues for any large
installation of Digest, such as WebDAV services load-balanced
across multiple machines, so I think the fix is worse than the bug.
However, I am not confidant that I know enough about this code
to object further.  The original code seems much more convoluted
than it should be, which means either the design is inherently
wrong or I simply don't know why it needs to be so complicated.

Roy


RE: Where is configured the library used by Apache httpd server for the ldap_search_ext_s implementation?

2013-06-14 Thread Michael Furman


Thank you for your reply!

I hope you will be able answer to one more question (that is
fit to dev list and not to users list): 

According to the link below mod_ldap should be compiled differently for each
LDAP SDK (OpenLDAP SDK, Novell LDAP SDK, Mozilla LDAP SDK, native Solaris LDAP
SDK or the native Microsoft LDAP SDK):

https://httpd.apache.org/docs/current/mod/mod_ldap.html



Where can I download mod_ldap for different LDAP SDK (for
example for Mozilla LDAP SDK)?

Or I should build it on my computer?

What is default LDAP SDK that supported by mod_ldap in the httpd distribution.

Thanks in advance for your help,

  Michael



> Date: Fri, 14 Jun 2013 15:50:56 -0400
> Subject: Re: Where is configured the library used by Apache httpd server for 
> the ldap_search_ext_s implementation?
> From: cove...@gmail.com
> To: dev@httpd.apache.org
> 
> On Fri, Jun 14, 2013 at 3:45 PM, Michael Furman
>  wrote:
> > Dear Apache developers!
> >
> > I want to understand where is configured the library used by Apache httpd
> > server for the ldap_search_ext_s implementation.
> >
> > I looked at util_ldap.c:
> > http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/modules/ldap/util_ldap.c?view=markup
> >
> >   result = ldap_search_ext_s(ldc->ldap,
> >
> >(char *)basedn, scope,
> >
> >(char *)filter, attrs, 0,
> >
> >NULL, NULL, NULL, APR_LDAP_SIZELIMIT, &res);
> >
> >
> >
> > The method ldap_search_ext_s can be implemented by different providers,
> > include OpenLDAP, Novell LDAP SDK or iPlanet (Netscape) SDK.
> >
> 
> The flavor of LDAP SDK is detected when the "apr-util" dependency is 
> configured:
> 
> srclib/apr-util$ ./configure --help|grep ldap
>   --with-ldap-include=path  path to ldap include files with trailing slash
>   --with-ldap-lib=pathpath to ldap lib file
>   --with-ldap=library ldap library to use
> 
> If you build httpd, apr, and apr-util all at once you usually pass
> these flags to httpd's configure script and they are passed down to
> apr-util.
> 
> For recent releases, You can see the dependency baked into the
> apr_ldap-1.so using ldd.