Kerberos 5 v1.5.1 on AIX 5.2 or AIX 5.3
Lamar.Saxon@americredit.com
Lamar.Saxon at americredit.com
Mon Sep 18 22:01:12 EDT 2006
Believe it or not; both solutions seem to work and compilation succeeds
!
#define GET_HOST_BY_NAME(NAME, HP, ERR, TMP) \
{ \
(HP) = (gethostbyname_r((NAME), &TMP.ent, &TMP.data) \
? 0 \
: &TMP.data); \
(ERR) = h_errno; \
}
Worked and so did...
#define GET_HOST_BY_NAME(NAME, HP, ERR, TMP) \
{ \
struct hostent my_h_ent; \
(HP) = (gethostbyname_r((NAME), &TMP.ent, &TMP.data) \
? 0 \
: &my_h_ent); \
(ERR) = h_errno; \
}
Thanks for the help ! I will continue testing with my current install
base on AIX. I really appreciate the rapid responses and solutions !
Lamar
-----Original Message-----
From: Ken Raeburn [mailto:raeburn at MIT.EDU]
Sent: Monday, September 18, 2006 5:13 PM
To: Marcus Watts
Cc: Saxon, Lamar; kerberos at mit.edu
Subject: Re: Kerberos 5 v1.5.1 on AIX 5.2 or AIX 5.3
On Sep 18, 2006, at 17:56, Marcus Watts wrote:
> Lamar.Saxon at americredit.com writes:
> ...
>> making all in util...
>> making all in util/support...
>> cc -I../../include -I./../../include -I. -I.
>> -DKRB5_DEPRECATED=1 -DKRB5_PRIVATE=1 -D_LARGE_FILES -DLA
>> L -DLANL_ICN -qhalt=e -O -D_THREAD_SAFE -c fake-addrinfo.c
>> "fake-addrinfo.c", line 1212.9: 1506-045 (S) Undeclared identifier
>> my_h_ent.
>> make: 1254-004 The error code from the last command is 1.
> ...
>
> I hesitate to recommend this as the totally right answer, but
> it looks like the "#ifdef _AIX" case in util/support/fake-addrinfo.c
> defines a GET_HOST_BY_NAME which doesn't declare any local storage.
> It should probably have a line that reads
> struct hostent my_h_ent; \
> inserted immediately before the line that reads
> (HP) = (gethostbyname_r((NAME), &TMP.ent, &TMP.data) \
> (on or around line 178).
I think "&my_h_ent" was supposed to be changed to "&TMP.ent" in that
macro. (The "TMP" stuff was because making such narrowly-scoped
automatic variables may not guarantee that the storage is still live
when the pointer gets used. Instead, now the caller has to supply a
variable of a type controlled in this header, system-specific, that
holds all the longer-lived storage we need.)
Lamar, could you let me know if that works for you?
Ken
Privileged and Confidential. This e-mail, and any attachments there to, is intended only for use by the addressee(s) named herein and may contain privileged or confidential information. If you have received this e-mail in error, please notify me immediately by a return e-mail and delete this e-mail. You are hereby notified that any dissemination, distribution or copying of this e-mail and/or any attachments thereto, is strictly prohibited.
More information about the Kerberos
mailing list