--- Chad Simmons <[EMAIL PROTECTED]> wrote:
>
> Can you show some examples of how you are calling crypt?? Also we'll need the
> definitions of the variables you are passing. It looks to me as though it's
> trying to locate a crypt function that takes 2 character pointers that are
> constant, instead of the standard crypt function which takes 2 character
> pointers to constant data.
>
> The difference is:
>
> const char * foo = "Testing Testing 123";
> char const * bar = "This is a Test";
>
> foo = "This is a new string"; // This line is OK.
> foo[7] = '\n'; // This line will give a compiler error.
>
> bar = "This is a new string"; // This line will give a compiler error.
> bar[7] = '\n'; // This line is OK.
>
> In the first case you can change the value of the pointer, but not the value
> of
> the data being pointed to.
>
> In the second case you can change the value of the data being pointed to, but
> not the value of the pointer.
>
> ~Kender
Doh, wasn't paying close enough attention.. I thought it was saying
crypt( char * const, char * const)
not
crypt( char const *, char const *)
So disregard the above.
The problem is most likely (as others have pointed out) the declaration of
crypt within the source itself, rather than using the standard header file. The
reason is that the standard header probably has an
#if defined(CPP)
extern C {
#endif
#if defined(CPP)
}
#endif
While the declaration in stock ROM does not.
~Kender
=====
-----BEGIN GEEK CODE BLOCK-----
Version 3.1
GCS/L/C/O d-(+) s++:+ a-- C+++$>++++ UBLS++++$
P+++(--)$ L++>+++ E--- W+>++$ N !o K? w(--) !O
M- !V PS+ PE(++) Y+ PGP->+ t- 5 X+() R(+) tv+@
b++(+++) !DI+++ D G(-) e>+++$ h---() r+++ y+++
------END GEEK CODE BLOCK------
__________________________________________________
Do You Yahoo!?
Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
http://geocities.yahoo.com/ps/info1