[issue32399] _uuidmodule.c cannot build on AIX - different typedefs of uuid_t, etc..

Michael Felt report at bugs.python.org
Fri Dec 22 04:00:24 EST 2017


Michael Felt <michael at felt.demon.nl> added the comment:

Understood.

What I have learned.

Although the types are quite different, they are both 16 bytes.

Starting with AIX 6.1, libc includes uuid_create(&uuid, &status)
which fills "uuid" with a uuid.uuid1() like result.
After calling uuid_to_string( &uuid, &uuid_string, &status); the result:
"13d866fa-e6f1-11e7-8017-fad18cf76204"

Further reading of the documentation within """ and """ in Lib/uuid.py helps me realize that the AIX approach aligns with the UUID fields description:

        fields      a tuple of the six integer fields of the UUID,
                    which are also available as six individual attributes
                    and two derived attributes:

            time_low                the first 32 bits of the UUID
            time_mid                the next 16 bits of the UUID
            time_hi_version         the next 16 bits of the UUID
            clock_seq_hi_variant    the next 8 bits of the UUID
            clock_seq_low           the next 8 bits of the UUID
            node                    the last 48 bits of the UUID


So - with this: there is also more than can be done for AIX re: https://bugs.python.org/issue28009

More to come...

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue32399>
_______________________________________


More information about the Python-bugs-list mailing list