Amos Jeffries | 23 Oct 13:42 2014
Picon

[REVIEW] SBuf I/O Comm::Write API

This patch is the proposed Comm::Write API update to handle SBuf writes.
It is PREVIEW because I have not yet altered or written any code to
actually use it yet as proof of correct operation. I intend to followup
with this as part of a larger tunnel conversion later if the design is
agreed.

It follows the same model as implented for Comm::Read:

* The code requiring a write(2) uses Comm::Write() to register interest
in writes with a callback.

* When write(2) is possible the registerd callback will be scheduled.

* The recipient of a write callback is permitted to use Comm::WriteNow()
to perform a synchronous write(2) operation (or not, if it chooses).

* The results of Comm::WriteNow() call are:
 - a Comm::Flag indicating OK/ERROR/INPROGRESS - where INPROGRESS
represents delay pool preventing write(2), or some minor error requiring
a retry,
 - the buffer passed for immediate writing is consume()'d by the amount
actually written (which may leave it with remaining bytes).

* Comm::MonitorsWrite(fd) test is provided to check if a specific FD is
already active with a waiting callback.

Amos
=== modified file 'src/comm/Write.cc'
(Continue reading)

Amos Jeffries | 23 Oct 07:12 2014
Picon

Re: [RFC] Auth design changes


On 23/10/2014 6:05 p.m., Henrik Nordström wrote:
> tor 2014-10-23 klockan 12:35 +1300 skrev Amos Jeffries:
> 
>> Aye, do you know where I could find any documentation on how it
>> is/was supposed to work?
> 
> There is no RFC on it. But it worked the same as Negotiate, just
> using raw GSSAPI blobs without the Microsoft Negotiate SSP
> wrapper.

Okay I think it will fit nicely in the proposed design.

Amos
Amos Jeffries | 23 Oct 01:35 2014
Picon

Re: [RFC] Auth design changes


On 23/10/2014 7:20 a.m., Henrik Nordström wrote:
> ons 2014-10-22 klockan 16:07 +1300 skrev Amos Jeffries:
> 
>> * move most of the existing Negotiate code to a module called 
>> Kerberos. Which would think its native scheme type() was
>> "Kerberos" [albeit unused], and emit the helper blobs as-is.
> 
> Note: There is/was also a HTTP "kerberos" auth scheme. Works the
> same as Negotiate but raw kerberos exchanges without the Windows
> negotiate wrapper.

Aye, do you know where I could find any documentation on how it is/was
supposed to work?

Amos

noc | 22 Oct 15:06 2014

Build failed in Jenkins: 3.HEAD-amd64-centos-7-clang #61

See <http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/61/changes>

Changes:

[Amos Jeffries] Drop dead code HttpStateData::ReadReplyWrapper()

------------------------------------------
[...truncated 11240 lines...]
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/log'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/log'>
Making uninstall in ipc
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/ipc'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/ipc'>
Making uninstall in mgr
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/mgr'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/mgr'>
Making uninstall in snmp
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/snmp'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/snmp'>
Making uninstall in adaptation
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/adaptation'>
Making uninstall in icap
make[4]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/adaptation/icap'>
make[4]: Nothing to be done for `uninstall'.
make[4]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/adaptation/icap'>
make[4]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-7-clang/ws/btlayer-00-default/squid-3.HEAD-BZR/_build/src/adaptation'>
(Continue reading)

Amos Jeffries | 22 Oct 05:07 2014
Picon

[RFC] Auth design changes


Negotiate auth protocol is a bit nasty since it is a wrapper protocol
around both NTLM and Kerberos.

We are facing issues where Negotiate/NTLM handling differs from plain
NTLM and the negotiate_wrapper helper can fail as a result.

Markus has requested I look into merging the wrapper helper
functionality into the Negotiate auth module itself instead of a
separate helper. It has been a long task trying to figure it out but I
think I may have a way forward finally.

What I would like to do is:

 * adjust the module APIs such that the label they emit on headers was
configurable and could be changed at runtime independent of the type()
name they are configured and indexed by.

 * move most of the existing Negotiate code to a module called
Kerberos. Which would think its native scheme type() was "Kerberos"
[albeit unused], and emit the helper blobs as-is.

 * write a new Negotiate module that has Config::decode() probe the
GSSAPI header for protocol sub-type then generates a Ntlm::UserRequest
or Kerberos::UserRequest object. Calling the new API methods to set
their header label "Negotiate".
 - this would only happen for the sub-protocols which were configured
of course.

 * the Negotiate module would completely lack its own UserRequest and
(Continue reading)

noc | 21 Oct 16:50 2014

Jenkins build is back to normal : 3.HEAD-amd64-FreeBSD-10-clang #201

See <http://build.squid-cache.org/job/3.HEAD-amd64-FreeBSD-10-clang/201/>

_______________________________________________
squid-dev mailing list
squid-dev <at> lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev
Amos Jeffries | 19 Oct 23:38 2014
Picon

[RFC] Squid 4.0 ideas


Kinkie brought up the idea of a Squid 4.x release in IRC.

I have mentioned to a few clients who asked when 4.0 would be out that
we will probably want it to be a big reason, like changing the
language was between the 2.x to 3.x versions.

I have usually had in mind a change along the lines of:
 - libraries building with Erlang/Ada/Go, or
 - redesigning the whole packaging structure (but we already have
SourceLayout without it), or
 - redesigning the event processing system (but we already did
AsyncJob without it).

Then again, we actually *are* planning a language change in the next
few months.

The C++03 to C++11 transition will bring with it a relatively large
bump in the minimum toolchain and thus OS support. So while it's not a
radical change it is probably worth considering as a good reason for
calling the next series 4.0.

If we do so we would also need to treat 3.5 as somewhat of an LTE
release. That was on the cards anyway for older OS with backports
having the same criteria of building on C++03 compilers. The version
bump would make it somewhat formal though with us needing to take on
the maintenance instead of punting it off to commercial or distro
support teams. Are we prepared as a group to go for that?

We have most of the coming year to think about this. I just thought I
(Continue reading)

noc | 17 Oct 08:48 2014

Build failed in Jenkins: 3.HEAD-amd64-ubuntu-saucy #341

See <http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/341/changes>

Changes:

[Amos Jeffries] Boilerplate: update release script COPYRIGHT file action

------------------------------------------
[...truncated 37186 lines...]
Making uninstall in ipc
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/ipc'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/ipc'>
Making uninstall in mgr
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/mgr'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/mgr'>
Making uninstall in ssl
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/ssl'>
 ( cd
'/tmp/am-dc-29833/<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_inst/libexec'>
&& rm -f ssl_crtd )
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/ssl'>
Making uninstall in snmp
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/snmp'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/snmp'>
Making uninstall in adaptation
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/adaptation'>
Making uninstall in icap
make[4]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-ubuntu-saucy/ws/btlayer-02-maximus/squid-3.HEAD-BZR/_build/src/adaptation/icap'>
(Continue reading)

noc | 17 Oct 02:23 2014

Build failed in Jenkins: anybranch-wholefarm-matrix » clang,rs-ubuntu-saucy #87

See <http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/87/>

------------------------------------------
[...truncated 11904 lines...]
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/http'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/http'>
Making uninstall in ip
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/ip'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/ip'>
Making uninstall in icmp
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/icmp'>
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/icmp'>
Making uninstall in ident
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/ident'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/ident'>
Making uninstall in log
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/log'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/log'>
Making uninstall in ipc
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/ipc'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/ipc'>
Making uninstall in mgr
make[3]: Entering directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/mgr'>
make[3]: Nothing to be done for `uninstall'.
make[3]: Leaving directory `<http://build.squid-cache.org/job/anybranch-wholefarm-matrix/compiler=clang,label=rs-ubuntu-saucy/ws/btlayer-00-default/squid-3.5.0.0-BZR/_build/src/mgr'>
(Continue reading)

noc | 17 Oct 02:12 2014

Build failed in Jenkins: 3.HEAD-amd64-centos-6 #510

See <http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/510/changes>

Changes:

[Amos Jeffries] Prep for 3.5.0.1

[Amos Jeffries] Release Notes update for 3.4

------------------------------------------
[...truncated 1911 lines...]
 (cd file && make  top_distdir=../../../squid-3.HEAD-BZR
distdir=../../../squid-3.HEAD-BZR/helpers/log_daemon/file \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/log_daemon/file'>
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/log_daemon/file'>
make[2]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/log_daemon'>
 (cd negotiate_auth && make  top_distdir=../../squid-3.HEAD-BZR
distdir=../../squid-3.HEAD-BZR/helpers/negotiate_auth \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[2]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/negotiate_auth'>
 (cd kerberos && make  top_distdir=../../../squid-3.HEAD-BZR
distdir=../../../squid-3.HEAD-BZR/helpers/negotiate_auth/kerberos \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/negotiate_auth/kerberos'>
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/negotiate_auth/kerberos'>
 (cd SSPI && make  top_distdir=../../../squid-3.HEAD-BZR
distdir=../../../squid-3.HEAD-BZR/helpers/negotiate_auth/SSPI \
     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)
make[3]: Entering directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/negotiate_auth/SSPI'>
make[3]: Leaving directory `<http://build.squid-cache.org/job/3.HEAD-amd64-centos-6/ws/btlayer-00-default/helpers/negotiate_auth/SSPI'>
(Continue reading)

noc | 16 Oct 20:06 2014

Build failed in Jenkins: 3.HEAD-amd64-centos-7 #119

See <http://build.squid-cache.org/job/3.HEAD-amd64-centos-7/119/>

------------------------------------------
Started by an SCM change
Building remotely on rs-centos-7 (gcc farm 7.0.1406 CentOS amd64-CentOS-7.0.1406 clang
CentOS-7.0.1406 amd64-CentOS amd64) in workspace <http://build.squid-cache.org/job/3.HEAD-amd64-centos-7/ws/>
$ bzr revision-info -d <http://build.squid-cache.org/job/3.HEAD-amd64-centos-7/ws/>
[3.HEAD-amd64-centos-7] $ bzr pull --overwrite http://bzr.squid-cache.org/bzr/squid3/trunk/
ERROR: Failed to pull
Retrying after 10 seconds
$ bzr revision-info -d <http://build.squid-cache.org/job/3.HEAD-amd64-centos-7/ws/>
[3.HEAD-amd64-centos-7] $ bzr pull --overwrite http://bzr.squid-cache.org/bzr/squid3/trunk/
ERROR: Failed to pull
Retrying after 10 seconds
$ bzr revision-info -d <http://build.squid-cache.org/job/3.HEAD-amd64-centos-7/ws/>
[3.HEAD-amd64-centos-7] $ bzr pull --overwrite http://bzr.squid-cache.org/bzr/squid3/trunk/
ERROR: Failed to pull

_______________________________________________
squid-dev mailing list
squid-dev <at> lists.squid-cache.org
http://lists.squid-cache.org/listinfo/squid-dev

Gmane