Re: Environment to build a squid helper

2008-08-12 Thread Amos Jeffries
> On ons, 2008-08-13 at 15:18 +1200, Amos Jeffries wrote:
>> >
>> > Checking... code broken. Not Windows specific.
>> >
>>
>> How so? Endian problems?
>
> /* Decode addr2 */
> if (*addr2 && !(q->addr2=addr2) ) {
> debugs(28, 0, "aclIpParseIpData: unknown second address in '" <<
> t << "'");
> delete q;
> self_destruct();
> return NULL;
> }
> else q->addr2 = addr2;
>
> This assignment sets addr2 to "255.255.255.255" as addr2 is "".
>
>
>> What do the unit-tests do?
>
> No idea. Didn't run them (no cppunit in my mingw installation). The
> problem was very visible in gdb.
>
> I fixed it by = addr1, which works but maybe isn't optimal.. probably
> should be SetEmpty() instead..
>
> Or maybe = "" should be equivalent to SetEmpty() in which case the
> original code works, and can be simplified a lot... not sure how
> IPAddress is supposed to work here, if it at all is supposed to be used
> in = ""..

It should be capable of accepting it. "" == NULL == "garbage" to IPAddress.

IIRC, the ACLIP::match() logics depend on addr2 being either the end of a
range different to addr1 or empty for optimal testing. addr1==addr2 is
worst-case match() state for every request.

Amos




Re: Environment to build a squid helper

2008-08-12 Thread Robert Collins
On Wed, 2008-08-13 at 00:02 -0400, Tres Seaver wrote:
> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA1
> 
> Henrik Nordstrom wrote:
> > On tis, 2008-08-12 at 22:52 -0400, Tres Seaver wrote:
> > 
> >> Isn't 'extern inline' a contradiction?  There should be *no* linkage of
> >> any function being inlined.
> > 
> > It depends on your viewpoint.
> > 
> > inline is only a hint that the function is a candidate for being
> > inlined. It may still be compiled as a separate function.
> 
> But such a function should be *static*, not *extern*:  if it is a
> reasonable candidate for inlining, then the cost of linking likely
> dominates the space saved by declariing it 'intern'.
> 
> > In GCC "extern inline" then meant that the function should have extern
> > linkage if not inlined, or to be exact a call to an external function if
> > outside of this compile unit if not inlined.
> > 
> > Quite useful to avoid repeated duplication of the same function in each
> > comple unit
> 
> Inlining involves repeated duplication of the same function (body) at
> each call site, no?  If inlining is a good idea (trading space at the
> call site to avoid the overhead of a call setup), then declaring the
> function extern seems silly.


Say I have a function foo. Its inline (which is a hint).

I use it in two translation units (1.cxx and 2.cxx), and call it twice
in both. Say that once it inlines, and once it doesn't.

Then:
 1.o contains foo_MANGLED
 2.o contains foo_MANGLED

By having linkage extern, I can build foo_MANGLED once and link to it
when its not inlined.

If foo_MANGLED is intern, then I end up with two copies of foo_MANGLED
*that were not inlined*. So this is wasted space.

-Rob

-- 
GPG key available at: .


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


Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On ons, 2008-08-13 at 00:02 -0400, Tres Seaver wrote:

> Inlining involves repeated duplication of the same function (body) at
> each call site, no?  If inlining is a good idea (trading space at the
> call site to avoid the overhead of a call setup), then declaring the
> function extern seems silly.

Not if you consider that inlining is only done when optimization is
enabled. An extern inline is the equivalent to a extern prototype
without function body to inline, just as any other extern.

But ideally the compilers should deal with this automatically, reducing
duplicate inline functions in the link phase or earlier.. but they
don't.

Anyway, the problem is fixed.

Regards
Henrik


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


Re: Environment to build a squid helper

2008-08-12 Thread Tres Seaver
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Henrik Nordstrom wrote:
> On tis, 2008-08-12 at 22:52 -0400, Tres Seaver wrote:
> 
>> Isn't 'extern inline' a contradiction?  There should be *no* linkage of
>> any function being inlined.
> 
> It depends on your viewpoint.
> 
> inline is only a hint that the function is a candidate for being
> inlined. It may still be compiled as a separate function.

But such a function should be *static*, not *extern*:  if it is a
reasonable candidate for inlining, then the cost of linking likely
dominates the space saved by declariing it 'intern'.

> In GCC "extern inline" then meant that the function should have extern
> linkage if not inlined, or to be exact a call to an external function if
> outside of this compile unit if not inlined.
> 
> Quite useful to avoid repeated duplication of the same function in each
> comple unit

Inlining involves repeated duplication of the same function (body) at
each call site, no?  If inlining is a good idea (trading space at the
call site to avoid the overhead of a call setup), then declaring the
function extern seems silly.

, but unfortunately not part of the standard language
> definition and gcc 4.3 now changed to follow the standard.. (extern
> ignored).
> 
> The change in GCC semantics has been documented in the GCC documentation
> for quite some time (some years), but as always documentation is never
> read until there is a problem so it was not discovered there was a
> change until trying to compile Squid with gcc-4.3.

OK.


Tres.
- --
===
Tres Seaver  +1 540-429-0999  [EMAIL PROTECTED]
Palladion Software   "Excellence by Design"http://palladion.com
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFIolzy+gerLs4ltQ4RApl7AKDNV75b5OrsxUxtVr0ysrgkz5Q67gCgziLm
1lj/fKbY49iG+gDH96iXobM=
=82nu
-END PGP SIGNATURE-


Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On ons, 2008-08-13 at 15:18 +1200, Amos Jeffries wrote:
> >
> > Checking... code broken. Not Windows specific.
> >
> 
> How so? Endian problems?

/* Decode addr2 */
if (*addr2 && !(q->addr2=addr2) ) {
debugs(28, 0, "aclIpParseIpData: unknown second address in '" <<
t << "'");
delete q;
self_destruct();
return NULL;
}
else q->addr2 = addr2;

This assignment sets addr2 to "255.255.255.255" as addr2 is "".


> What do the unit-tests do?

No idea. Didn't run them (no cppunit in my mingw installation). The
problem was very visible in gdb.

I fixed it by = addr1, which works but maybe isn't optimal.. probably
should be SetEmpty() instead..

Or maybe = "" should be equivalent to SetEmpty() in which case the
original code works, and can be simplified a lot... not sure how
IPAddress is supposed to work here, if it at all is supposed to be used
in = ""..

Regards
Henrik


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


Cacheboy / Squid-2.HEAD + IPv6 core

2008-08-12 Thread Adrian Chadd
Just a heads up;

I'm part way through migrating the basic cacheboy comm code to support
IPv4/IPv6 sockets.

The change history is here:

http://code.google.com/p/cacheboy/source/list?path=playpen/sockaddr_change

This does -not- enable v6 in the Squid codebase proper. Thats for another pass.
It also doesn't currently conditionally compile v6 in. Thats for
another pass. :)

The core code handles concurrent use of v4 and v6 sockets fine -
app/tcpproxy/ acts as a straight TCP proxy gateway from v6 incoming to
a v4 server. I'm next going to modify it to specify combinations of
v4/v6 incoming and v4/v6 outgoing so all the various options can be
tested.

I'm yet to write unit tests for the libsqinet/ code - ie, my version
of Amos' IPAddress class.

I hope to have this stuff finished up before the Squid meetup in
Sydney next week. I'm hoping Amos will do a presentation of Squid-3's
IPv6 implementation so I can compare notes.





Adrian


Re: [MERGE] wordlist refactoring

2008-08-12 Thread Adrian Chadd
2008/8/13 Kinkie <[EMAIL PROTECTED]>:
> Hi all,
> this patch is an attempt at streamlining the wordlist implementation in
> 3.HEAD, by:
> - OO-izing it [1]
> - providing an unit-test for it
> - giving it a couple of convenience functions
> - documenting it
>
> It's still a work-in-progress, but in the end a wordlist would probably be
> better implemented by using a set of Strings anyways.
> It's however a step forward already, since it gives wordlist callers better
> c++ semantics than the current implementation in HEAD.
>
> The patch has been compile-tested, unit-tested, test-suite'd and run-tested.

Um, so you've not gotten rid of the ugly previous wordlist behaviour?

Why are you doing stuff like this?

+*W += *regex_dump;
+delete regex_dump;

Why not W->add(regex_dump)

?

Whats this:
const char *
+wordlist::add(const char *word)
+{
+wordlist *cur=this;
+
+if (key==NULL) { //special case empty wordlist
+key = xstrdup(word);
+return key;
+}
+
+while (cur->next != NULL)
+cur = cur->next;
+
+cur->next = new wordlist(word);
+
+return word;
+}


Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On ons, 2008-08-13 at 15:08 +1200, Amos Jeffries wrote:
> > configure prefix was a translated path.. and something is wrong with the
> > errorpages default path.. include/autoconf.h says
> >   #define DEFAULT_SQUID_DATA_DIR "${datarootdir}"
> 
> Oh great.
> FYI, thats generated using a AC_SUBST in configure.in from an autoconf
> variable. Did I get the $.. syntax non-portable?

It's an AC_DEFINE_UNQUOTED, and the $ reference does not get expanded
leaving the variable reference literary as-is in the define which is not
what we want..

Regards
Henrik


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


Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On tis, 2008-08-12 at 22:52 -0400, Tres Seaver wrote:

> Isn't 'extern inline' a contradiction?  There should be *no* linkage of
> any function being inlined.

It depends on your viewpoint.

inline is only a hint that the function is a candidate for being
inlined. It may still be compiled as a separate function.

In GCC "extern inline" then meant that the function should have extern
linkage if not inlined, or to be exact a call to an external function if
outside of this compile unit if not inlined.

Quite useful to avoid repeated duplication of the same function in each
comple unit, but unfortunately not part of the standard language
definition and gcc 4.3 now changed to follow the standard.. (extern
ignored).

The change in GCC semantics has been documented in the GCC documentation
for quite some time (some years), but as always documentation is never
read until there is a problem so it was not discovered there was a
change until trying to compile Squid with gcc-4.3.

Regards
Henrik


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


SquidMan GUI

2008-08-12 Thread Amos Jeffries
The SquidMan GUI for MacOS X was brought to my attention today.

http://homepage.mac.com/adg/SquidMan/index.html

We don't seem to have any mention of it on squid-cache.org.
Where do people think it should go? I was thinking related-software, but
we don't have a section there for squid managers.

Amos



Re: Environment to build a squid helper

2008-08-12 Thread Amos Jeffries
> On ons, 2008-08-13 at 04:16 +0200, Henrik Nordstrom wrote:
>
>> At the moment I have plain builds of Squid-2 & Squid-3 compiling, but
>> have not yet tested them..
>
> After a little tweaking I got Squid-3.HEAD to start, and it does seem to
> work, but something is wrong with how it parses IP addresses as I get
> complaints about 127.0.0.0/8 masking away part of the specified IP...
>
> Checking... code broken. Not Windows specific.
>

How so? Endian problems?
What do the unit-tests do?

Amos



Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On ons, 2008-08-13 at 04:16 +0200, Henrik Nordstrom wrote:

> At the moment I have plain builds of Squid-2 & Squid-3 compiling, but
> have not yet tested them..

After a little tweaking I got Squid-3.HEAD to start, and it does seem to
work, but something is wrong with how it parses IP addresses as I get
complaints about 127.0.0.0/8 masking away part of the specified IP...

Checking... code broken. Not Windows specific.

Regards
Henrik


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


Re: Environment to build a squid helper

2008-08-12 Thread Amos Jeffries
> On tis, 2008-08-12 at 22:10 +0200, Guido Serassio wrote:
>
>> Yes, the resulting feel is not so good 
>
> I am attemting an MSYS install with the goal of being able to build
> squid-3 (and 2) just to see how it fares..  Initial results isn't too
> bad, but the GCC version I installed (4.3.1) barfs a bit about various
> crap in the Squid code..
>
> Most annoying is that the semantics of "extern inline" seems to have
> changed making it fail to link due to new(int) being multiply defined..
> not 100% sure how to best fix this.. the choices are either drop the
> extern part from "extern inline" or add a gcc function attribute making
> gcc 4.3+ compile "extern inline" the "gnu-way" instead of the current
> "C99 standard-way"..

Those should be just plain "inline" due to the way we use .cci files, yes?

>
> At the moment I have plain builds of Squid-2 & Squid-3 compiling, but
> have not yet tested them.. got a little confused by the msys path
> translation at first and the binaries didn't like very well that the
> configure prefix was a translated path.. and something is wrong with the
> errorpages default path.. include/autoconf.h says
>   #define DEFAULT_SQUID_DATA_DIR "${datarootdir}"

Oh great.
FYI, thats generated using a AC_SUBST in configure.in from an autoconf
variable. Did I get the $.. syntax non-portable?

>
> autoconf documentation says clearly to never refer to these variables
> outside Makefile.. and that we should send them using a -D define if
> needed in the binary..
>
> Hmm.. Building Squid with MSYS has it's issues.. some compiled paths
> gets translated, some not.. specifically any paths in -D compiler
> defines such as the default config file path gets translated. I guess
> that mingw make needs to be used to avoid this.
>
> Also I haven't found an mingw openssl library (only an MSYS version)..
> Seems I will need to install openssl from source..
>
> What openssl library are you using for the Windows build?
>
> But at least my laptop has showed me that it has a boost level on the
> CPU fan.
>
>
> Regards
> Henrik
>




Re: Environment to build a squid helper

2008-08-12 Thread Tres Seaver
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Henrik Nordstrom wrote:
> On tis, 2008-08-12 at 22:10 +0200, Guido Serassio wrote:
> 
>> Yes, the resulting feel is not so good 
> 
> I am attemting an MSYS install with the goal of being able to build
> squid-3 (and 2) just to see how it fares..  Initial results isn't too
> bad, but the GCC version I installed (4.3.1) barfs a bit about various
> crap in the Squid code..
> 
> Most annoying is that the semantics of "extern inline" seems to have
> changed making it fail to link due to new(int) being multiply defined..
> not 100% sure how to best fix this.. the choices are either drop the
> extern part from "extern inline" or add a gcc function attribute making
> gcc 4.3+ compile "extern inline" the "gnu-way" instead of the current
> "C99 standard-way"..

Isn't 'extern inline' a contradiction?  There should be *no* linkage of
any function being inlined.


Tres.
- --
===
Tres Seaver  +1 540-429-0999  [EMAIL PROTECTED]
Palladion Software   "Excellence by Design"http://palladion.com
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFIokx++gerLs4ltQ4RAn0XAJ9jlN3tqVxm5lxVfQQ2s3fdlNUtdgCcDMbM
W37I+HfIRfhdHJCKr6zUFBs=
=0X+X
-END PGP SIGNATURE-



Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On ons, 2008-08-13 at 07:28 +1000, Robert Collins wrote:

> For irony, at least when I last worked on it, cygwin setup is built in
> --no-cygwin mode; which while not precisely mingw, is a lot closer to
> that than a cygwin1.dll using program :>.

The problem with cygwin in this context is that it has a too complete
posix build environment, making it very hard to autoconf non-cygwin.dll
applications properly. At least last time I looked into those modes of
cygwin..

It really needs a separate set of headers per build environment to get
around that in a reasonably clean manner.

Regards
Henrik





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


Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On tis, 2008-08-12 at 22:10 +0200, Guido Serassio wrote:

> Yes, the resulting feel is not so good 

I am attemting an MSYS install with the goal of being able to build
squid-3 (and 2) just to see how it fares..  Initial results isn't too
bad, but the GCC version I installed (4.3.1) barfs a bit about various
crap in the Squid code..

Most annoying is that the semantics of "extern inline" seems to have
changed making it fail to link due to new(int) being multiply defined..
not 100% sure how to best fix this.. the choices are either drop the
extern part from "extern inline" or add a gcc function attribute making
gcc 4.3+ compile "extern inline" the "gnu-way" instead of the current
"C99 standard-way"..

At the moment I have plain builds of Squid-2 & Squid-3 compiling, but
have not yet tested them.. got a little confused by the msys path
translation at first and the binaries didn't like very well that the
configure prefix was a translated path.. and something is wrong with the
errorpages default path.. include/autoconf.h says
  #define DEFAULT_SQUID_DATA_DIR "${datarootdir}"

autoconf documentation says clearly to never refer to these variables
outside Makefile.. and that we should send them using a -D define if
needed in the binary..

Hmm.. Building Squid with MSYS has it's issues.. some compiled paths
gets translated, some not.. specifically any paths in -D compiler
defines such as the default config file path gets translated. I guess
that mingw make needs to be used to avoid this.

Also I haven't found an mingw openssl library (only an MSYS version)..
Seems I will need to install openssl from source..

What openssl library are you using for the Windows build?

But at least my laptop has showed me that it has a boost level on the
CPU fan.


Regards
Henrik


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


Re: [MERGE] wordlist refactoring

2008-08-12 Thread Robert Collins
On Tue, 2008-08-12 at 22:00 +0200, Kinkie wrote:
> Hi all,
> this patch is an attempt at streamlining the wordlist
> implementation in 3.HEAD, by:
> ..
> The patch has been compile-tested, unit-tested, test-suite'd and run-tested.

Thanks Kinkie. BundleBuggy couldn't identify the project this patch was
for because
# target_branch: file:///media/src/squid/repo/squid-trunk/

I think you are missing a line in ~/.bazaar/locations.conf:
[file:///media/src/squid/repo/squid-trunk/]
public_location=http://www.squid-cache.org/bzr/squid3/trunk

I've told bundlebuggy its a squid project patch now.

Cheers,
Rob

-- 
GPG key available at: .


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


Re: Environment to build a squid helper

2008-08-12 Thread Robert Collins
On Tue, 2008-08-12 at 21:43 +0200, Henrik Nordstrom wrote:
> 
> Been looking into MinGW+MSYS in the last days from this thread and
> it's
> status reminds me a bit of Squid-3 in the last years.. way overdue for
> the next bundle release with any serious development dependent on
> versions currently flagged as testing/unstable.. That project would
> really benefit a lot if they switched to the Cygwin installer giving
> the
> user better access to the available components and updates..

For irony, at least when I last worked on it, cygwin setup is built in
--no-cygwin mode; which while not precisely mingw, is a lot closer to
that than a cygwin1.dll using program :>.

-Rob
-- 
GPG key available at: .


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


Re: Bug 2422 (imemory leak in Squid-2.7): HttpStateData?

2008-08-12 Thread Henrik Nordstrom
On ons, 2008-08-13 at 01:03 +0800, Adrian Chadd wrote:
> Here's some valgrind output, thanks to Chris:
> 
> ==00:00:09:27.008 7355== 1,308,371 (1,210,456 direct, 97,915 indirect)
> bytes in 802 blocks are definitely lost in loss record 36 of 38
> ==00:00:09:27.008 7355==at 0x4A1AD7D: calloc (vg_replace_malloc.c:279)
> ==00:00:09:27.008 7355==by 0x4B7593: xcalloc (util.c:561)
> ==00:00:09:27.008 7355==by 0x46B1FC: memPoolAlloc (MemPool.c:303)
> ==00:00:09:27.008 7355==by 0x422554: cbdataInternalAlloc (cbdata.c:212)
> ==00:00:09:27.008 7355==by 0x455FA3: httpStart (http.c:1485)
> ==00:00:09:27.008 7355==by 0x4426D1: fwdDispatch (forward.c:757)
> ==00:00:09:27.008 7355==by 0x44164F: fwdConnectDone (forward.c:361)
> ==00:00:09:27.008 7355==by 0x432BA3: commConnectCallback (comm.c:366)
> ==00:00:09:27.008 7355==by 0x4330F9: commConnectHandle (comm.c:486)
> ==00:00:09:27.008 7355==by 0x435954: comm_call_handlers 
> (comm_generic.c:300)
> ==00:00:09:27.008 7355==by 0x436145: do_comm_select (comm_epoll.c:193)
> ==00:00:09:27.008 7355==by 0x435C4D: comm_select (comm_generic.c:390)
> 
> "definitely lost" probably indicates that the cbdata reference
> counting for the httpStateData is busted somewhere.

Probably. Question is where...

Regards
Henrik



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


Re: Environment to build a squid helper

2008-08-12 Thread Henrik Nordstrom
On tis, 2008-08-12 at 21:29 +0200, Guido Serassio wrote:

> I'm not sure of all the effects of the switch to a new Visual Studio 
> version, I'm sure of the following:
> - A new C runtime, not provided with Windows 2000, XP and 2003, is 
> needed, so a Windows setup program may be needed

Isn't there a separate installer available for the runtime?

> - The import of  the old 6.0 project into a new Visual Studio is not 
> a painless thing, so a significative effort is needed ... :-(

Pain.

> But I'have a really big doubt about the new C Runtime: I'm still 
> suspecting that the majority of Squid-3 problems on Windows are 
> related to some internal changes: some simple testing using MSYS + 
> MinGW is giving very good results while the Visual Studio 2005 build 
> crashes after few request.

Personally I prefer seeing MinGW+MSYS as the primary platform if
possible, even if most Windows developers is more used to Visual
Studio.. There is a lot of benefits in keeping the build environments as
common as possible across the platforms.

> Unfortunately, this specific helper cannot be compiled using MinGW, 
> because the needed header and library definitions are missing in the 
> current version  :-(

:-(

> I hope in the future to have the time to provide a patch to the MinGW project.

:-)


Been looking into MinGW+MSYS in the last days from this thread and it's
status reminds me a bit of Squid-3 in the last years.. way overdue for
the next bundle release with any serious development dependent on
versions currently flagged as testing/unstable.. That project would
really benefit a lot if they switched to the Cygwin installer giving the
user better access to the available components and updates..


Regards
Henrik





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


Re: Environment to build a squid helper

2008-08-12 Thread Guido Serassio

Hi Henrik,

At 23.45 11/08/2008, Henrik Nordstrom wrote:

Unfortunately there is only Guido woring on his sparetime (the little he
have) on the Windows port of Squid, which means there is very limited
support for Visual Studio. For some reason using later versions does not
work out well and is why Squid is still using that old and now
end-of-life compiler version. It is unclear to me if that's due to Squid
or oddness of Visual Studio triggered by Squid..


There are many reasons for this.

The main reason is probably the Squid-3 development problems and the 
Squid-2 extended life:
If you remember, already during the Stockholm Code Sprint in December 
2004, the development of Squid-3 on Windows was switched to Visual 
Studio 2005 (still at RC release level at the Sprint time), while all 
the Squid-2 environment was left untouched, because no more Squid-2 
development was planned during the Sprint.


But things changes: so during 2006 we have Squid 2.6 and now Squid 
2.7, both still using Visual Studio 6.


I'm not sure of all the effects of the switch to a new Visual Studio 
version, I'm sure of the following:
- A new C runtime, not provided with Windows 2000, XP and 2003, is 
needed, so a Windows setup program may be needed
- The import of  the old 6.0 project into a new Visual Studio is not 
a painless thing, so a significative effort is needed ... :-(


But I'have a really big doubt about the new C Runtime: I'm still 
suspecting that the majority of Squid-3 problems on Windows are 
related to some internal changes: some simple testing using MSYS + 
MinGW is giving very good results while the Visual Studio 2005 build 
crashes after few request.


I agree that it will better to support a free Visual Studio Express 
version (2005 or 2008), even if  I hate the new Visual Studio 
environments because they are very heavy, slow and big, while the old 
Visual Studio 6 is really light.


However, Visual Studio 6 is still not so hard to find: any Windows 
developer that in the past have subscribed the Microsoft Developer 
Network (MSDN) own a legal copy of it.



But it should build just fine in MinGW+MSYS.


Unfortunately, this specific helper cannot be compiled using MinGW, 
because the needed header and library definitions are missing in the 
current version  :-(


I hope in the future to have the time to provide a patch to the MinGW project.

Regards

Guido



-

Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1   10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135  Fax. : +39.011.9781115
Email: [EMAIL PROTECTED]
WWW: http://www.acmeconsulting.it/



Bug 2422 (imemory leak in Squid-2.7): HttpStateData?

2008-08-12 Thread Adrian Chadd
Here's some valgrind output, thanks to Chris:

==00:00:09:27.008 7355== 1,308,371 (1,210,456 direct, 97,915 indirect)
bytes in 802 blocks are definitely lost in loss record 36 of 38
==00:00:09:27.008 7355==at 0x4A1AD7D: calloc (vg_replace_malloc.c:279)
==00:00:09:27.008 7355==by 0x4B7593: xcalloc (util.c:561)
==00:00:09:27.008 7355==by 0x46B1FC: memPoolAlloc (MemPool.c:303)
==00:00:09:27.008 7355==by 0x422554: cbdataInternalAlloc (cbdata.c:212)
==00:00:09:27.008 7355==by 0x455FA3: httpStart (http.c:1485)
==00:00:09:27.008 7355==by 0x4426D1: fwdDispatch (forward.c:757)
==00:00:09:27.008 7355==by 0x44164F: fwdConnectDone (forward.c:361)
==00:00:09:27.008 7355==by 0x432BA3: commConnectCallback (comm.c:366)
==00:00:09:27.008 7355==by 0x4330F9: commConnectHandle (comm.c:486)
==00:00:09:27.008 7355==by 0x435954: comm_call_handlers (comm_generic.c:300)
==00:00:09:27.008 7355==by 0x436145: do_comm_select (comm_epoll.c:193)
==00:00:09:27.008 7355==by 0x435C4D: comm_select (comm_generic.c:390)

"definitely lost" probably indicates that the cbdata reference
counting for the httpStateData is busted somewhere.




Adrian