[19650] in Kerberos_V5_Development
Port on AIX 32bit : unsigned int len; and __ulong32_t socklen_t
daemon@ATHENA.MIT.EDU (REIX, Tony)
Wed Aug 30 09:47:22 2017
From: "REIX, Tony" <tony.reix@atos.net>
To: "krbdev@mit.edu" <krbdev@mit.edu>
Date: Wed, 30 Aug 2017 13:47:04 +0000
Message-ID: <B37989F2852398498001550C29155BE5178C9ED2@FRCRPVV9EX3MSX.ww931.my-it-solutions.net>
Content-Language: fr-FR
Content-Type: multipart/mixed;
boundary="_004_B37989F2852398498001550C29155BE5178C9ED2FRCRPVV9EX3MSXw_"
MIME-Version: 1.0
Errors-To: krbdev-bounces@mit.edu
--_004_B37989F2852398498001550C29155BE5178C9ED2FRCRPVV9EX3MSXw_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi,
On AIX, in:
src/appl/simple/client/sim_client.c
src/appl/simple/server/sim_server.c
the following definition works in 64bit but not in 32bit:
unsigned int len;
if (getsockname(sock, (struct sockaddr *)&c_sock, &len) < 0) {
This is due to:
/opt/freeware/lib/gcc/powerpc-ibm-aix6.1.0.0/6.3.0/include-fixed/sys/sock=
et.h :
int getsockname(int, struct sockaddr *__restrict__, socklen_t *__rest=
rict__);
typedef __ulong32_t socklen_t;
and:
/usr/include/inttypes.h
#ifdef __64BIT__
typedef unsigned int __ulong32_t;
#else
typedef unsigned long __ulong32_t;
#endif /* __64BIT__ */
I do not know what happens on Linux/x86_64 in 32bit.
I'm looking at Linux/x86_64 now, using krb5-1.15.1-8.fc26.spec.
However I think that it builds by default in 64bit.
Moreover:
- /root/rpmbuild/BUILD/gcc-7.1.0/fixincludes/tests/base/sys/socket.h
does not contain any definition for getsockname()
- __ulong32_t does not seem to exist on Linux.
So: if krb5 on Linux is always built in 64bit, and never in 32bit, the issu=
e does not appear.
However, maybe that, even in 32bit, the issue does not appear. Unless some =
# if __WORDSIZE =3D=3D 64 is required ?
Anyway, here is my (simple) patch for AIX.
Cordialement,
Tony Reix
Bull - ATOS
IBM Coop Architect & Technical Leader
Office : +33 (0) 4 76 29 72 67
1 rue de Provence - 38432 =C9chirolles - France
www.atos.net<http://www.atos.net/>
--_004_B37989F2852398498001550C29155BE5178C9ED2FRCRPVV9EX3MSXw_
Content-Type: text/x-patch; name="krb5-1.15.1-sim-unsigned_int_len.patch"
Content-Description: krb5-1.15.1-sim-unsigned_int_len.patch
Content-Disposition: attachment;
filename="krb5-1.15.1-sim-unsigned_int_len.patch"; size=892;
creation-date="Wed, 30 Aug 2017 13:42:26 GMT";
modification-date="Wed, 30 Aug 2017 13:42:26 GMT"
Content-Transfer-Encoding: base64
LS0tIC4vc3JjL2FwcGwvc2ltcGxlL2NsaWVudC9zaW1fY2xpZW50LmMuT1JJR0lOCTIwMTctMDgt
MzAgMTU6MDI6MDQgKzAyMDAKKysrIC4vc3JjL2FwcGwvc2ltcGxlL2NsaWVudC9zaW1fY2xpZW50
LmMJMjAxNy0wOC0zMCAxNTowNDozMCArMDIwMApAQCAtNjIsNyArNjIsMTEgQEAKIG1haW4oaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIHsKICAgICBpbnQgc29jaywgaTsKLSAgICB1bnNpZ25lZCBp
bnQgbGVuOworI2lmZGVmIF9fNjRCSVRfXworICAgIHVuc2lnbmVkIGludCAgbGVuOworI2Vsc2UK
KyAgICB1bnNpZ25lZCBsb25nIGxlbjsKKyNlbmRpZiAvKiBfXzY0QklUX18gKi8KICAgICBpbnQg
ZmxhZ3MgPSAwOyAgICAgICAgICAgICAgICAgICAgICAvKiBmbGFncyBmb3Igc2VuZHRvKCkgKi8K
ICAgICBzdHJ1Y3Qgc2VydmVudCAqc2VydjsKICAgICBzdHJ1Y3QgaG9zdGVudCAqaG9zdDsKLS0t
IC4vc3JjL2FwcGwvc2ltcGxlL3NlcnZlci9zaW1fc2VydmVyLmMuT1JJR0lOCTIwMTctMDgtMzAg
MTU6MDU6MTQgKzAyMDAKKysrIC4vc3JjL2FwcGwvc2ltcGxlL3NlcnZlci9zaW1fc2VydmVyLmMJ
MjAxNy0wOC0zMCAxNTowNToxNiArMDIwMApAQCAtNjQsNyArNjQsMTEgQEAKIG1haW4oaW50IGFy
Z2MsIGNoYXIgKmFyZ3ZbXSkKIHsKICAgICBpbnQgc29jaywgaTsKLSAgICB1bnNpZ25lZCBpbnQg
bGVuOworI2lmZGVmIF9fNjRCSVRfXworICAgIHVuc2lnbmVkIGludCAgbGVuOworI2Vsc2UKKyAg
ICB1bnNpZ25lZCBsb25nIGxlbjsKKyNlbmRpZiAvKiBfXzY0QklUX18gKi8KICAgICBpbnQgZmxh
Z3MgPSAwOyAgICAgICAgICAgICAgICAgICAgICAvKiBmb3IgcmVjdmZyb20oKSAqLwogICAgIGlu
dCBvbiA9IDE7CiAgICAgc3RydWN0IHNlcnZlbnQgKnNlcnY7Cg==
--_004_B37989F2852398498001550C29155BE5178C9ED2FRCRPVV9EX3MSXw_
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
krbdev mailing list krbdev@mit.edu
https://mailman.mit.edu/mailman/listinfo/krbdev
--_004_B37989F2852398498001550C29155BE5178C9ED2FRCRPVV9EX3MSXw_--