Hi Burton and Jac (and all, let's not exclude anyone
:D),
files are up at
http://savefile.com/projects.php?pid=420840 - REVIEWED
patches related to CVS as of today (Aug 29th, checked
the module MINUTES ago) and this time with CORRECT
docs, the much-needed libs (HELL ON EARTH to find and
integrate them), and for the lazy ones a zip file with
source and libs ready to compile. Best of all, now
IPv6 IS SUPPORTED (much to my surprise, caught a few
of these packets in my LAN today)! I suppose this
brings ntop Win32 up to speed with ntop Linux in terms
of features.
Just to be safe, U
Burton, I'm not a C/C++ coder by trade, I just know
enought to fix things I want/need. I'm sure that
having ntop run on MingW will attract SKILLED Windows
programmers, and while I recognize my approaches
aren't the the prettiest, they work - and I've seen
quite a few ugly things while skimming through the
code.
I'll have a look at the u_int64_t problem. Regards,

Georger

--- Burton Strauss <[EMAIL PROTECTED]> escreveu:

> Never came through to my system - looks like a
> couple of messages didn't
> make it on those days s'be'it...
> 
> Comments...
> 
> * sFlow - remember, sFlow could be seeing IPv6 data
> on a non-V6 host.  Are
> you sure you want to remove all IPv6 processing? 
> 
> 
> * uintnn_t vs. u_intnn_t.  Rather than put a bunch
> of #ifdef everywhere, why
> don't you fix it right?  The uintnn_t types appear
> only one or two places in
> all of ntop while the corresponding u_intnn_t types
> appear in 100s.
> 
> $ codegrep uint8_t
> globals-core.h:955:#define IN6_IS_ADDR_MULTICAST(a)
> (((uint8_t *) (a))[0] ==
> 0xff)
> globals-structtypes.h:57:typedef u_char  uint8_t;
> pbuf.c:3797:    uint8_t sof = 0, eof = 0, error = 0;
> 
> Gets rid of junk like this:
> 
> +#if defined(WIN32) && defined(__GNUC__)
> +  u_int16_t protocolId;
> +#else
>    uint16_t protocolId;
> +#endif
> 
> 
> * If MinGW doesn't support 64 bit counters, you have
> a lot of problems w/
> roll-over.  So this is probably wrong:
> 
>  #if defined(WIN32) && defined(__GNUC__)
> -typedef unsigned long long u_int64_t; /* on mingw
> unsigned long is 32 bits
> */
> +//typedef unsigned long long u_int64_t; /* on mingw
> unsigned long is 32
> bits */
>  #else
> 
> You have to figure SOMETHING out for u_int64_t.
> 
> 
> * Rather than commenting bad crud out, just remove
> it:
> 
>  #if defined(WIN32) && defined(__GNUC__)
> -extern char *gdbm_strerror(gdbm_error errno);
> +//extern char *gdbm_strerror(gdbm_error errno);
>  #endif
> 
> * Unless it's clearer (i.e. code at each level),
> don't code this:
>  
>  #if defined(WIN32) && defined(__GNUC__)
>  #ifndef _GETOPT_H
>  #ifndef HAVE_GETOPT_H
> ...
>  #endif /* HAVE_GETOPT_H */
>  #endif /* _GETOPT_H */
>  #endif /* WIN32 && __GNUC__ */
> 
> Instead:
> 
>  #if defined(WIN32) && defined(__GNUC__) &&
> !defined(_GETOPT_H) &&
> !defined(HAVE_GETOPT_H)
>  #endif /* Win32 && __GNUC__ && !_GETOPT_H &&
> !HAVE_GETOPT_H
> 
> (FWIW, _GETOPT_H is local to getopt.c and so
> unnecessary - the line in
> plugins\rrdPlugin.c s/b removed)
> 
> 
> * WRT globals-defines.h change, the point if the
> #ifdef WIN32 stuff is to
> define those things which don't exist for the MS
> VC++ compiler.  You may
> need to provide different definitions, so you may
> need to add a #ifdef
> __GNUC__ set, but...  rather than removing these for
> MinGW and then adding
> dozens of #ifdef lines in the code, why don't you
> follow suit?

__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger 
http://br.download.yahoo.com/messenger/ 
_______________________________________________
Ntop-dev mailing list
[email protected]
http://listgateway.unipi.it/mailman/listinfo/ntop-dev

Reply via email to