Major function rename needed for uuid_*() API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Manu noticed a very ugly issue related to different implementations/API
for uuid_*() functions. It seems that not all OS implementations of uuid
functions have the same API. This is not a major issue, Gluster carries
contrib/uuid/ for this.

However, applications that trigger loading of libglusterfs.so through a
dlopen() call, might have uuid_* symbols loaded already. On Linux this
problem is likely not noticible, because the symbols from libuuid and
libglusterfs do not conflict. Unfortunately, on NetBSD the libc library
provides the same uuid_* symbols, but these expect different parameters.

The plan to clean this up, and fix the dlopen() loading on NetBSD is
like this:

1. replace/rename all uuid_*() functions with gf_uuid_*()
   NetBSD can use the contrib/uuid (with gf_ prefix) symbols

2. glue the OS implementations of uuid_*() functions into libglusterfs,
   replacing the gf_uuid_*() functions from contrib/uuid
   - this can be done gradually, contrib/uuid will become unneeded when
     a glue layer is available

3. once all OS glue layers are in place, remove contrib/uuid completely


Please keep an eye out for patch #8 from Many:

    http://review.gluster.org/10017

For tracking this particular issue, Bug 1206587 was opened. The patch
above should make it for the 3.7 release, but points 2 and 3 do not have
the same high priority.

Thanks,
Niels
_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel




[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux