Re: Rev 8911: Honor 0x and 0 prefixes as numeric base indication when parsing squid.conf in http://squid-cache.org/bzr/squid3/trunk/

2008-04-03 Thread Amos Jeffries

Is the following a sign that bundlebuggy is working in two locations now?

Amos

Alex Rousskov wrote:

At http://squid-cache.org/bzr/squid3/trunk/


revno: 8911
revision-id:[EMAIL PROTECTED]
parent: [EMAIL PROTECTED]
committer: Alex Rousskov [EMAIL PROTECTED]
branch nick: trunk
timestamp: Wed 2008-04-02 22:41:41 -0600
message:
  Honor 0x and 0 prefixes as numeric base indication when parsing squid.conf
  integer options.
  
  Squid3 parses squid.conf file integers as decimal numbers while Squid2 honors

  0 and 0x prefixes (indicating octal and hex numbers). The later functionality
  is needed for things like unmask that are traditionally specified using octal
  format.
  
  This patch changes Squid3 behavior to match that of Squid2.

  Internally, Squid3 uses sscanf and Squid2 uses strtol.
  
  TODO: Squid3::GetInteger should probably use xatol,

  and xatol should be fixed to proper verify the result of strtol.
modified:
  src/Parsing.cc parsing.cc-20050103230824-8ncl0k4q72wd-1



=== modified file 'src/Parsing.cc'
--- a/src/Parsing.cc2007-08-13 23:20:50 +
+++ b/src/Parsing.cc2008-04-03 04:41:41 +
@@ -89,7 +89,8 @@
 if (token == NULL)
 self_destruct();
 
-if (sscanf(token, %d, i) != 1)

+// %i honors 0 and 0x prefixes, which are important for things like umask
+if (sscanf(token, %i, i) != 1)
 self_destruct();
 
 return i;







Re: monitoring bugzilla changes

2008-04-03 Thread Kinkie
On Wed, Apr 2, 2008 at 11:12 PM, Alex Rousskov
[EMAIL PROTECTED] wrote:

  On Wed, 2008-04-02 at 22:19 +0200, Henrik Nordstrom wrote:
   ons 2008-04-02 klockan 11:00 -0600 skrev Alex Rousskov:
On Wed, 2008-04-02 at 13:04 +1300, Amos Jeffries wrote:
 I only saw 2288 because it was mentioned in squid-users. Has my
 subscribe to the bugzilla notify list gone astray again? I was getting
 it for a few days, then nothing.
   
Can we just subscribe squid-dev to bugzilla?
  
   It's squid-bugs which is the bug monitoring list..

  Which is, apparently, requires more administration than the project can
  currently provide. It should not be that difficult for Amos or other
  developers to monitor bugs...

I'm willing to step in and help with this kind of activities. If
everyone agrees, I can start by working on restructuring and
maintaining squid-related mailing lists.

-- 
 /kinkie


Re: bzr issues

2008-04-03 Thread Kinkie
On Thu, Apr 3, 2008 at 12:22 AM, Alex Rousskov
[EMAIL PROTECTED] wrote:

 On Thu, 2008-04-03 at 08:55 +1100, Robert Collins wrote:
   On Wed, 2008-04-02 at 15:52 -0600, Alex Rousskov wrote:
On Thu, 2008-04-03 at 08:38 +1100, Robert Collins wrote:
 On Wed, 2008-04-02 at 11:21 -0600, Alex Rousskov wrote:

  I think an incomplete [MERGE]  default subject would be much better
  that the current behavior that will lead to _incorrect_ subjects.
 
  In addition, a command line option to specify the subject should be
  added.

 Amos wasn't entirely clear in his initial report. What is happening is
 that bzr send when there is no detected desktop mail client is 
 providing
 a text editor window with *no* facility for setting the subject.

 This is clearly a usability bug, and once fixed the issue will go away.
 There is a bug open on this now.
   
The second bug is that the default subject for desktop mail clients is
wrong.
  
   You want just [MERGE] right ?

  This is something that bzr developers should decide.

  IMHO, [MERGE]  or [MERGE] PUT SUBJECT HERE or even [MERGE] PUT
  SUBJECT HERE unique ID may work, I guess.

  The [MERGE] prefix seems to be needed because otherwise most folks will
  not know it is required for integration with other tools. However, if
  those tools differ in their requirements or often not used, then an
  empty subject is the best solution (some mailers will warn about it
  even).

IMO integration with other tools should use out-of-band information,
such as an extra mail header.
[MERGE] in the subject is good to interact with humans, but too flimsy
to be used with automated tools.

-- 
 /kinkie


Re: Rev 8911: Honor 0x and 0 prefixes as numeric base indication when parsing squid.conf in http://squid-cache.org/bzr/squid3/trunk/

2008-04-03 Thread Alex Rousskov
On Thu, 2008-04-03 at 23:05 +1300, Amos Jeffries wrote:
 Is the following a sign that bundlebuggy is working in two locations now?

The following is the message I had to manually forward to the commit
list because I have not yet learned how to configure bzr to
automatically pick sendto addresses based on the branch. The trunk
commit message was sent to me and I forwarded it.

I am committing a lot of stuff to the eCAP branch and I did not want to
spam the commit list with that...

Cheers,

Alex.


 Alex Rousskov wrote:
  At http://squid-cache.org/bzr/squid3/trunk/
  
  
  revno: 8911
  revision-id:[EMAIL PROTECTED]
  parent: [EMAIL PROTECTED]
  committer: Alex Rousskov [EMAIL PROTECTED]
  branch nick: trunk
  timestamp: Wed 2008-04-02 22:41:41 -0600
  message:
Honor 0x and 0 prefixes as numeric base indication when parsing squid.conf
integer options.

Squid3 parses squid.conf file integers as decimal numbers while Squid2 
  honors
0 and 0x prefixes (indicating octal and hex numbers). The later 
  functionality
is needed for things like unmask that are traditionally specified using 
  octal
format.

This patch changes Squid3 behavior to match that of Squid2.
Internally, Squid3 uses sscanf and Squid2 uses strtol.

TODO: Squid3::GetInteger should probably use xatol,
and xatol should be fixed to proper verify the result of strtol.
  modified:
src/Parsing.cc parsing.cc-20050103230824-8ncl0k4q72wd-1
  
  
  
  === modified file 'src/Parsing.cc'
  --- a/src/Parsing.cc2007-08-13 23:20:50 +
  +++ b/src/Parsing.cc2008-04-03 04:41:41 +
  @@ -89,7 +89,8 @@
   if (token == NULL)
   self_destruct();
   
  -if (sscanf(token, %d, i) != 1)
  +// %i honors 0 and 0x prefixes, which are important for things like 
  umask
  +if (sscanf(token, %i, i) != 1)
   self_destruct();
   
   return i;
  
  



Re: /bzr/squid3/trunk/ r8912: Attempted fix for FreeBSD run-time socket error (22) Invalid Object on connects

2008-04-03 Thread Alex Rousskov
On Thu, 2008-04-03 at 21:39 +1200, Amos Jeffries wrote:
 
 revno: 8912
 committer: Amos Jeffries [EMAIL PROTECTED]
 branch nick: trunk
 timestamp: Thu 2008-04-03 21:39:06 +1200
 message:
   Attempted fix for FreeBSD run-time socket error (22) Invalid Object on 
 connects

This fix did not help.

Amos, do you have a FreeBSD system to test this on (squid-cache.org, for
example)? If not, it would be nice to undo all the changes that broke
FreeBSD connect because it is getting increasingly more difficult to
cherrypick which trunk commits to undo. I understand that you were
trying to fix a Linux leak but I think a completely broken connect on
FreeBSD trumps a leak on Linux, especially in trunk/.

FWIW, I have attached the relevant configure output with the latest fix.
I am not sure at all, but it feels like you are missing some #includes
in the test cases.

Thank you,

Alex.



configure:23105: checking for ss_len field in struct sockaddr_storage
configure:23135: gcc -c -Wall -g   conftest.c 5
configure:23141: $? = 0
configure:23158: result: yes
configure:23174: checking for sin_len field in struct sockaddr_in
configure:23204: gcc -c -Wall -g   conftest.c 5
conftest.c: In function `main':
conftest.c:52: error: storage size of 's' isn't known
conftest.c:52: warning: unused variable `s'
configure:23210: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME Squid Web Proxy
| #define PACKAGE_TARNAME squid
| #define PACKAGE_VERSION 3.HEAD-BZR
| #define PACKAGE_STRING Squid Web Proxy 3.HEAD-BZR
| #define PACKAGE_BUGREPORT http://www.squid-cache.org/bugs/;
| #define PACKAGE squid
| #define VERSION 3.HEAD-BZR
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define HAVE_LIBDL 1
| #define HAVE_DLERROR 1
| #define CACHE_HTTP_PORT 3128
| #define CACHE_ICP_PORT 3130
| #define CONFIG_HOST_TYPE i386-unknown-freebsd5.5
| #define SQUID_CONFIGURE_OPTIONS  '--prefix=/usr/local/squid3' 
'--enable-icap-client' '--disable-optimizations'
| #define _SQUID_INLINE_
| #define USE_CARP 1
| #define USE_SQUID_ESI 0
| #define ICAP_CLIENT 1
| #define USE_WCCP 1
| #define USE_WCCPv2 1
| #define SQUID_SNMP 1
| #define USE_HTCP 1
| #define HTTP_VIOLATIONS 1
| #define USE_IDENT 1
| #define DISABLE_POOLS 0
| #define USE_UNLINKD 1
| #define USE_IPV6 0
| #define IPV6_SPECIAL_SPLITSTACK 0
| #define IPV6_SPECIAL_LOCALHOST 0
| #define IPV6_SPECIAL_V4MAPPING 0
| #define DNS_CNAME 0
| #define HAVE_SS_LEN_IN_SS 1
| /* end confdefs.h.  */
| 
| #include sys/types.h
| #include sys/socket.h
| 
| int
| main ()
| {
|  struct sockaddr_in s; s.sin_len = 1;
|   ;
|   return 0;
| }
configure:23227: result: no
configure:23243: checking for sin6_len field in struct sockaddr_in6
configure:23273: gcc -c -Wall -g   conftest.c 5
conftest.c: In function `main':
conftest.c:53: error: storage size of 's' isn't known
conftest.c:53: warning: unused variable `s'
configure:23279: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME Squid Web Proxy
| #define PACKAGE_TARNAME squid
| #define PACKAGE_VERSION 3.HEAD-BZR
| #define PACKAGE_STRING Squid Web Proxy 3.HEAD-BZR
| #define PACKAGE_BUGREPORT http://www.squid-cache.org/bugs/;
| #define PACKAGE squid
| #define VERSION 3.HEAD-BZR
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define HAVE_LIBDL 1
| #define HAVE_DLERROR 1
| #define CACHE_HTTP_PORT 3128
| #define CACHE_ICP_PORT 3130
| #define CONFIG_HOST_TYPE i386-unknown-freebsd5.5
| #define SQUID_CONFIGURE_OPTIONS  '--prefix=/usr/local/squid3' 
'--enable-icap-client' '--disable-optimizations'
| #define _SQUID_INLINE_
| #define USE_CARP 1
| #define USE_SQUID_ESI 0
| #define ICAP_CLIENT 1
| #define USE_WCCP 1
| #define USE_WCCPv2 1
| #define SQUID_SNMP 1
| #define USE_HTCP 1
| #define HTTP_VIOLATIONS 1
| #define USE_IDENT 1
| #define DISABLE_POOLS 0
| #define USE_UNLINKD 1
| #define USE_IPV6 0
| #define IPV6_SPECIAL_SPLITSTACK 0
| #define IPV6_SPECIAL_LOCALHOST 0
| #define IPV6_SPECIAL_V4MAPPING 0
| #define DNS_CNAME 0
| #define HAVE_SS_LEN_IN_SS 1
| #define HAVE_SIN_LEN_IN_SAI 0
| /* end confdefs.h.  */
| 
| #include sys/types.h
| #include sys/socket.h
| 
| int
| main ()
| {
|  struct sockaddr_in6 s; s.sin6_len = 1;
|   ;
|   return 0;
| }
configure:23296: result: no


Re: /bzr/squid3/trunk/ r8912: Attempted fix for FreeBSD run-time socket error (22) Invalid Object on connects

2008-04-03 Thread Alex Rousskov

On Thu, 2008-04-03 at 08:56 -0600, Alex Rousskov wrote:

 I am not sure at all, but it feels like you are missing some #includes
 in the test cases.

Adding #include netinet/in.h to test cases would give you:

 configure:23105: checking for ss_len field in struct sockaddr_storage
 configure:23159: result: yes
 configure:23175: checking for sin_len field in struct sockaddr_in
 configure:23229: result: yes
 configure:23245: checking for sin6_len field in struct sockaddr_in6
 configure:23299: result: yes

but the problem remains even with those fixed ./configure results:

 2008/04/03 09:57:59.122| ConnectSateData::connect: to 10.0.0.104:1344
 2008/04/03 09:57:59.122| comm_connect_addr: connecting socket 8 to 
 10.0.0.104:1344 (want family: 2)
 2008/04/03 09:57:59.122| comm_connect_addr: sock=8, addrinfo( , family=2, 
 addrlen=128 )
 2008/04/03 09:57:59.122| connect FD 8: (-1) (22) Invalid argument
 2008/04/03 09:57:59.122| connecting to: 10.0.0.104:1344
 2008/04/03 09:57:59.122| ConnectStateData::connect: FD 8: * - try again
 2008/04/03 09:57:59.122| ConnectStateData::connect: FD 8: * - ERR tried too 
 many times already.
 2008/04/03 09:57:59.122| commConnectCallback: FD 8

HTH,

Alex.




Re: /bzr/squid3/trunk/ r8912: Attempted fix for FreeBSD run-time socket error (22) Invalid Object on connects

2008-04-03 Thread Amos Jeffries

Alex Rousskov wrote:

On Thu, 2008-04-03 at 08:56 -0600, Alex Rousskov wrote:


I am not sure at all, but it feels like you are missing some #includes
in the test cases.




Ah thanks for that. I've added it to configure.

I've also rolled the specific comm_connect_addr parts out so trunk will 
run again until it can be tested more thoroughly. The rest is 
essentially unused code now but its unused code that needs to be tested 
and used.


For Adrian and others doing Linux testing may want to use this patch to 
re-insert it:

http://treenet.co.nz/prjects/squid/patches/linux-leak_comm_connect_addr.patch

I'll see if one of the offers of FreeBSD test boxes are still open. I 
don't think I can or want to exactly run a live proxy on squid-cache.org 
itself.


Amos


Adding #include netinet/in.h to test cases would give you:


configure:23105: checking for ss_len field in struct sockaddr_storage
configure:23159: result: yes
configure:23175: checking for sin_len field in struct sockaddr_in
configure:23229: result: yes
configure:23245: checking for sin6_len field in struct sockaddr_in6
configure:23299: result: yes


but the problem remains even with those fixed ./configure results:


2008/04/03 09:57:59.122| ConnectSateData::connect: to 10.0.0.104:1344
2008/04/03 09:57:59.122| comm_connect_addr: connecting socket 8 to 
10.0.0.104:1344 (want family: 2)
2008/04/03 09:57:59.122| comm_connect_addr: sock=8, addrinfo( , family=2, 
addrlen=128 )
2008/04/03 09:57:59.122| connect FD 8: (-1) (22) Invalid argument
2008/04/03 09:57:59.122| connecting to: 10.0.0.104:1344
2008/04/03 09:57:59.122| ConnectStateData::connect: FD 8: * - try again
2008/04/03 09:57:59.122| ConnectStateData::connect: FD 8: * - ERR tried too 
many times already.
2008/04/03 09:57:59.122| commConnectCallback: FD 8


HTH,

Alex.




--
Please use Squid 2.6.STABLE19 or 3.0.STABLE4


Re: bzr issues

2008-04-03 Thread Robert Collins
On Thu, 2008-04-03 at 12:57 +0200, Kinkie wrote:


 IMO integration with other tools should use out-of-band information,
 such as an extra mail header.
 [MERGE] in the subject is good to interact with humans, but too flimsy
 to be used with automated tools.

[MERGE] is used so humans can manually craft emails themselves.

-Rob
-- 
GPG key available at: http://www.robertcollins.net/keys.txt.


signature.asc
Description: This is a digitally signed message part