[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ossec-list] Re: string.h or strings.h
He Leslie,
I can feel your pain :) I had some problems dealing with that
and I tought it was fixed by including strings.h (the CFLAG
is -include strings.h, not string.h) on Solaris. I was looking
at some man pages and I think we need to stop using
index/rindex and only use strchr/strrchr everywhere.
Look at what the openbsd man page says:
"
The index() function is deprecated and shouldn't be used in new code.
"
Thanks,
--
Daniel B. Cid
dcid @ ( at ) ossec.net
On 6/23/06, Leslie S Arvin <arvin@xxxxxxxxxx> wrote:
>
> I've been installing ossec on Solaris, AIX, RedHat and working to
> port ossec-hids to HP-UX. The string.h vs. strings.h issue has been
> making me crazy. No matter which file I included I would get error
> messages and the '-include string.h' CFLAG was not working for Solaris.
> After analyzing which functions are included in which files, I decided to:
>
> 1. use '#include <string.h>' only.
> 2. convert all calls to index() and rindex() to strchr() and strrchr()
> respectively.
>
> string.h strings.h
> ------------------------------------------------------
> AIX index index
> strdup
> strchr
> ------------------------------------------------------
> RedHat index index
> strdup
> strchr
> ------------------------------------------------------
> SOLARIS 8 & 9 index
> strdup
> strchr
> ------------------------------------------------------
> HPUX index
> strdup
> strchr
>
> This made my compiler shut up. But this may not work on other OSes.
>
> According to www.gnu.org:
>
> "Some systems give these functions the names index and rindex; other
> systems use the names strchr and strrchr. Some systems support both
> pairs of names, but neither pair works on all systems."
> (http://www.gnu.org/prep/standards/html_node/System-Functions.html)
>
> They recommend using strchr/strrchr and if they don't exist "define
> them as macros in terms of the other pair." Unfortunately, their
> assumption that macros HAVE_STRCHR and HAVE_STRRCHR exist is invalid
> under Solaris 8 at least.
>
> So we'll have fun, fun, fun 'til the *nix puts the strchr() away.
>
> -- Leslie Arvin
> arvin@xxxxxxxxxx, Office: FREH G409, Phone: 765-496-3971
> Network Systems Administrator, ITI-Unix Platforms
> Purdue University, Information Technology at Purdue
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
-~----------~----~----~----~------~----~------~--~---
OSSEC home |
Main Index |
Thread Index
OSSEC project: www.ossec.net.
Mailling list information: http://www.ossec.net/en/mailing_lists.html.