diff options
author | Jiffin Tony Thottan <jthottan@redhat.com> | 2015-08-11 16:00:47 +0530 |
---|---|---|
committer | Kaleb KEITHLEY <kkeithle@redhat.com> | 2015-08-24 09:21:51 -0700 |
commit | 1ead86a8bcbfe4045729466e4b98f765f3c13c8d (patch) | |
tree | 7eb50e8dfbf012678e53f757d619c5ef6c901a15 /api/src/gfapi.aliases | |
parent | 5044b20a9fbe0f49b7929d2282890a7351df344d (diff) |
libgfapi: adding 'follow' flag to glfs_h_lookupat()
Previously glfs_h_lookupat won't follow the symlink, this patch
introduces new flag `follow` which will resolve the same. Applications
linking against the new library will need to use the new glfs_h_lookupat
API call.
In order to stay compatible with existing binaries that use the previous
glfs_h_lookupat() function, the old symbol needs to stay available.
Verification that there are two versions of glfs_h_lookupat:
$ objdump -T /usr/lib64/libgfapi.so.0 | grep -w glfs_h_lookupat
0000000000015070 g DF .text 000000000000021e GFAPI_3.7.4 glfs_h_lookupat
0000000000015290 g DF .text 0000000000000008 (GFAPI_3.4.2) glfs_h_lookupat
Testing with a binary (based on anonymous_fd_read_write.c from ./tests/)
that was linked against the old library:
$ objdump -T ./lookupat | grep -w glfs_h_lookupat
0000000000000000 DF *UND* 0000000000000000 GFAPI_3.4.2 glfs_h_lookupat
Enable debugging for 'ld.so' so that we can check that the GFAPI_3.4.2
version of the symbol gets loaded:
$ export LD_DEBUG_OUTPUT=lookupat.ld.log LD_DEBUG=all
$ ./lookupat
$ grep -w glfs_h_lookupat lookupat.ld.log.2543
2543: symbol=glfs_h_lookupat; lookup in file=./lookupat [0]
2543: symbol=glfs_h_lookupat; lookup in file=/lib64/libgfapi.so.0 [0]
2543: binding file ./lookupat [0] to /lib64/libgfapi.so.0 [0]: normal symbol `glfs_h_lookupat' [GFAPI_3.4.2]
Change-Id: I8bf9b1c19a0585f681bc1a7f84aad1ccd0f75f6a
BUG: 1252410
Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com>
Signed-off-by: Niels de Vos <ndevos@redhat.com>
Reviewed-on: http://review.gluster.org/11883
Reviewed-by: soumya k <skoduri@redhat.com>
Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Diffstat (limited to 'api/src/gfapi.aliases')
-rw-r--r-- | api/src/gfapi.aliases | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/api/src/gfapi.aliases b/api/src/gfapi.aliases index 9776c87fdcb..40b6ed21192 100644 --- a/api/src/gfapi.aliases +++ b/api/src/gfapi.aliases @@ -89,7 +89,7 @@ _pub_glfs_dup _glfs_dup$GFAPI_3.4.0 _pub_glfs_setfsuid _glfs_setfsuid$GFAPI_3.4.2 _pub_glfs_setfsgid _glfs_setfsgid$GFAPI_3.4.2 _pub_glfs_setfsgroups _glfs_setfsgroups$GFAPI_3.4.2 -_pub_glfs_h_lookupat _glfs_h_lookupat$GFAPI_3.4.2 +_pub_glfs_h_lookupat34 _glfs_h_lookupat$GFAPI_3.4.2 _pub_glfs_h_creat _glfs_h_creat$GFAPI_3.4.2 _pub_glfs_h_mkdir _glfs_h_mkdir$GFAPI_3.4.2 _pub_glfs_h_mknod _glfs_h_mknod$GFAPI_3.4.2 @@ -138,3 +138,5 @@ _priv_glfs_free_from_ctx _glfs_free_from_ctx$GFAPI_PRIVATE_3.7.0 _priv_glfs_new_from_ctx _glfs_new_from_ctx$GFAPI_PRIVATE_3.7.0 _priv_glfs_resolve _glfs_resolve$GFAPI_PRIVATE_3.7.0 _priv_glfs_process_upcall_event _glfs_process_upcall_event$GFAPI_PRIVATE_3.7.0 + +_pub_glfs_h_lookupat _glfs_h_lookupat$GFAPI_3.7.4 |