From 0967702c3f71c5d61e33f905c3272d029303743e Mon Sep 17 00:00:00 2001 From: Andrew Deason Date: Thu, 15 Jul 2021 19:59:47 -0500 Subject: [PATCH] AIX: Fix undefined symbols Various pieces of our code try to use symbols in our internal libraries that are not exported in the respective .sym file. On AIX, this causes the following build failures: ld: 0711-317 ERROR: Undefined symbol: .ubik_CallRock ld: 0711-317 ERROR: Undefined symbol: DISK_function_names ld: 0711-317 ERROR: Undefined symbol: VOTE_function_names ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[4]: *** [Makefile:45: afscp] Error 8 make[4]: Leaving directory '/.../src/libadmin/test' ld: 0711-317 ERROR: Undefined symbol: PR_function_names ld: 0711-317 ERROR: Undefined symbol: KAA_function_names ld: 0711-317 ERROR: Undefined symbol: KAT_function_names ld: 0711-317 ERROR: Undefined symbol: KAM_function_names ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[4]: *** [Makefile:117: rxstat_get_peer] Error 8 make[4]: Leaving directory '/.../src/libadmin/samples' ld: 0711-317 ERROR: Undefined symbol: .osi_audit_cmd_Options ld: 0711-317 ERROR: Undefined symbol: .osi_audit_open ld: 0711-317 ERROR: Undefined symbol: .afsconf_SuperIdentity ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:71: butc] Error 8 make[3]: Leaving directory '/.../src/tbutc' ld: 0711-317 ERROR: Undefined symbol: .pr_Initialize2 ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:111: pts] Error 8 make[3]: Leaving directory '/.../src/tptserver' ld: 0711-317 ERROR: Undefined symbol: .AFSVolListPartitions ld: 0711-317 ERROR: Undefined symbol: .AFSVolXListPartitions ld: 0711-317 ERROR: Undefined symbol: .RXAFS_GetStatistics64 ld: 0711-317 ERROR: Undefined symbol: .AFSVolPartitionInfo64 ld: 0711-317 ERROR: Undefined symbol: .AFSVolPartitionInfo ld: 0711-317 ERROR: Undefined symbol: .RXAFS_GetStatistics ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:65: fsprobe_test] Error 8 make[3]: Leaving directory '/.../src/fsprobe' ld: 0711-317 ERROR: Undefined symbol: fsprobe_Results ld: 0711-317 ERROR: Undefined symbol: gtxframe_exitValue ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:45: scout] Error 8 make[3]: Leaving directory '/.../src/scout' ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_toString ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_freeString ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:50: check_sysid] Error 8 make[3]: Leaving directory '/.../src/viced' ld: 0711-317 ERROR: Undefined symbol: .GetLogLevel make[3]: *** [Makefile:130: fileserver] Error 8 make[3]: Leaving directory '/.../src/viced' ld: 0711-317 ERROR: Undefined symbol: .GetLogDest ld: 0711-317 ERROR: Undefined symbol: .GetLogFilename ld: 0711-317 ERROR: Undefined symbol: .CloseLog make[3]: *** [Makefile:166: salvageserver] Error 8 make[3]: Leaving directory '/.../src/tsalvaged' ld: 0711-317 ERROR: Undefined symbol: .rxkad_StringToLevel ld: 0711-317 ERROR: Undefined symbol: .FilepathNormalize ld: 0711-317 ERROR: Undefined symbol: .ConstructLocalPath ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:32: upserver] Error 8 make[3]: Leaving directory '/.../src/update' ld: 0711-317 ERROR: Undefined symbol: xstat_fs_Results ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:77: xstat_fs_test] Error 8 make[3]: Leaving directory '/.../src/xstat' ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteKeyBySubType ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteKeyByType ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[3]: *** [Makefile:35: asetkey] Error 8 make[3]: Leaving directory '/.../src/aklog' ld: 0711-317 ERROR: Undefined symbol: .afsconf_FindService ld: 0711-317 ERROR: Undefined symbol: .afsconf_AddKey ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetLatestKeyByTypes ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[4]: *** [Makefile:19: authcon-t] Error 8 make[4]: Leaving directory '/.../tests/auth' ld: 0711-317 ERROR: Undefined symbol: .afsconf_AddUser ld: 0711-317 ERROR: Undefined symbol: .afsconf_IsSuperIdentity ld: 0711-317 ERROR: Undefined symbol: .afsconf_AddIdentity ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetNthUser ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetNthIdentity ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteUser ld: 0711-317 ERROR: Undefined symbol: .afsconf_DeleteIdentity ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[4]: *** [Makefile:25: superuser-t] Error 8 make[4]: Leaving directory '/.../tests/auth' ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetKeys ld: 0711-317 ERROR: Undefined symbol: .rx_opaque_new ld: 0711-317 ERROR: Undefined symbol: .rx_opaque_free ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetKeyByTypes ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetKeysByType ld: 0711-317 ERROR: Undefined symbol: .afsconf_PutTypedKeyList ld: 0711-317 ERROR: Undefined symbol: .afsconf_GetLatestKeysByType ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[4]: *** [Makefile:31: keys-t] Error 8 make[4]: Leaving directory '/.../tests/auth' ld: 0711-317 ERROR: Undefined symbol: ._afsconf_Touch ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[1]: *** [Makefile:34: realms-t] Error 8 make[1]: Leaving directory '/.../tests/auth' ld: 0711-317 ERROR: Undefined symbol: .opr_cache_get ld: 0711-317 ERROR: Undefined symbol: .opr_cache_put ld: 0711-317 ERROR: Undefined symbol: .opr_cache_init ld: 0711-317 ERROR: Undefined symbol: .opr_cache_free ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[1]: *** [Makefile:16: cache-t] Error 8 make[1]: Leaving directory '/.../tests/opr' ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_isNil ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_equal ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_hash ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_fromString ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_create ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_unpack ld: 0711-317 ERROR: Undefined symbol: .opr_uuid_pack ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[1]: *** [Makefile:37: uuid-t] Error 8 make[1]: Leaving directory '/.../tests/opr' ld: 0711-317 ERROR: Undefined symbol: .rxevent_Init ld: 0711-317 ERROR: Undefined symbol: .rxevent_Post ld: 0711-317 ERROR: Undefined symbol: .rxevent_Cancel ld: 0711-317 ERROR: Undefined symbol: .rxevent_RaiseEvents ld: 0711-317 ERROR: Undefined symbol: .rxevent_Put ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information. make[1]: *** [Makefile:18: event-t] Error 8 make[1]: Leaving directory '/.../tests/rx' To fix these, export the relevant symbols from the library's .sym file. Reviewed-on: https://gerrit.openafs.org/14707 Tested-by: BuildBot Reviewed-by: Benjamin Kaduk (cherry picked from commit 9656a6b92b86849aa964529947bacb5aea4d83eb) Backport notes: The following symbols are not present in the 1.8.x branch at this time, so removed from this backported patch: * afsconf_GetLatestRXGKKey * opr_cache_free * opr_cache_get * opr_cache_init * opr_cache_put * osi_audit_close * osi_audit_cmd_Options * osi_audit_open * pr_Initialize2 * ubik_CallRock The following symbol files are not present in the 1.8.x branch at this time, so were removed from this backported patch: * src/fsprobe/liboafs_fsprobe.la.sym * src/gtx/liboafs_gtx.la.sym * src/xstat/liboafs_xstat_fs.la.sym Change-Id: Idd7059fe9e372d9131fa575412b391f03cb24bb3 Reviewed-on: https://gerrit.openafs.org/15403 Tested-by: BuildBot Reviewed-by: Andrew Deason Reviewed-by: Cheyenne Wills Reviewed-by: Michael Meffie Reviewed-by: Stephan Wiesand --- src/auth/liboafs_auth.la.sym | 19 +++++++++++++++++++ src/fsint/liboafs_fsint.la.sym | 2 ++ src/kauth/liboafs_kauth.la.sym | 3 +++ src/opr/liboafs_opr.la.sym | 10 +++++++++- src/ptserver/liboafs_prot.la.sym | 1 + src/rx/liboafs_rx.la.sym | 7 +++++++ src/rxkad/liboafs_rxkad.la.sym | 1 + src/ubik/liboafs_ubik.la.sym | 2 ++ src/util/liboafs_util.la.sym | 6 ++++++ src/volser/liboafs_volser.la.sym | 4 ++++ 10 files changed, 54 insertions(+), 1 deletion(-) diff --git a/src/auth/liboafs_auth.la.sym b/src/auth/liboafs_auth.la.sym index 5e71334744..44b6b67738 100644 --- a/src/auth/liboafs_auth.la.sym +++ b/src/auth/liboafs_auth.la.sym @@ -1,4 +1,8 @@ +_afsconf_Touch +afsconf_AddIdentity +afsconf_AddKey afsconf_AddTypedKey +afsconf_AddUser afsconf_BuildServerSecurityObjects afsconf_BuildServerSecurityObjects_int afsconf_CellAliasApply @@ -10,23 +14,38 @@ afsconf_ClientAuthSecure afsconf_ClientAuthToken afsconf_Close afsconf_CountKeys +afsconf_DeleteIdentity afsconf_DeleteKey +afsconf_DeleteKeyBySubType +afsconf_DeleteKeyByType +afsconf_DeleteUser +afsconf_FindService afsconf_GetAfsdbInfo afsconf_GetAllKeys afsconf_GetCellInfo afsconf_GetCellName afsconf_GetExtendedCellInfo afsconf_GetKey +afsconf_GetKeyByTypes +afsconf_GetKeys +afsconf_GetKeysByType afsconf_GetLatestKey +afsconf_GetLatestKeysByType +afsconf_GetLatestKeyByTypes afsconf_GetLocalCell afsconf_GetNoAuthFlag +afsconf_GetNthIdentity +afsconf_GetNthUser afsconf_IsLocalRealmMatch +afsconf_IsSuperIdentity afsconf_Open afsconf_ParseNetFiles afsconf_PickClientSecObj +afsconf_PutTypedKeyList afsconf_SetLocalRealm afsconf_SetNoAuthFlag afsconf_SetSecurityFlags +afsconf_SuperIdentity afsconf_SuperUser afsconf_UpToDate afsconf_typedKey_new diff --git a/src/fsint/liboafs_fsint.la.sym b/src/fsint/liboafs_fsint.la.sym index ab0d72cada..e7f147c964 100644 --- a/src/fsint/liboafs_fsint.la.sym +++ b/src/fsint/liboafs_fsint.la.sym @@ -12,6 +12,8 @@ RXAFSCB_WhoAreYou RXAFS_CreateFile RXAFS_FetchStatus RXAFS_GetTime +RXAFS_GetStatistics +RXAFS_GetStatistics64 RXAFS_GiveUpCallBacks RXAFS_MakeDir RXAFS_OpCodeIndex diff --git a/src/kauth/liboafs_kauth.la.sym b/src/kauth/liboafs_kauth.la.sym index 0746df9412..d5c6c897ce 100644 --- a/src/kauth/liboafs_kauth.la.sym +++ b/src/kauth/liboafs_kauth.la.sym @@ -1,3 +1,6 @@ +KAA_function_names +KAM_function_names +KAT_function_names initialize_KA_error_table ka_AuthServerConn ka_AuthSpecificServersConn diff --git a/src/opr/liboafs_opr.la.sym b/src/opr/liboafs_opr.la.sym index 2a0cc2cbc9..bfa153141f 100644 --- a/src/opr/liboafs_opr.la.sym +++ b/src/opr/liboafs_opr.la.sym @@ -10,11 +10,19 @@ opr_rbtree_insert opr_rbtree_next opr_rbtree_remove opr_rbtree_replace -opr_rbtree_replace opr_stolower opr_stoupper opr_strcompose opr_threadname_set opr_ucstring +opr_uuid_create +opr_uuid_equal +opr_uuid_freeString +opr_uuid_fromString +opr_uuid_hash +opr_uuid_isNil +opr_uuid_pack +opr_uuid_toString +opr_uuid_unpack opr_softsig_Init opr_softsig_Register diff --git a/src/ptserver/liboafs_prot.la.sym b/src/ptserver/liboafs_prot.la.sym index b56aa5f836..8e43fe7224 100644 --- a/src/ptserver/liboafs_prot.la.sym +++ b/src/ptserver/liboafs_prot.la.sym @@ -1,3 +1,4 @@ +PR_function_names initialize_PT_error_table pr_AddToGroup pr_ChangeEntry diff --git a/src/rx/liboafs_rx.la.sym b/src/rx/liboafs_rx.la.sym index 90c2263b81..49e1899d03 100644 --- a/src/rx/liboafs_rx.la.sym +++ b/src/rx/liboafs_rx.la.sym @@ -124,13 +124,20 @@ rx_identity_populate rx_nPackets rx_opaque_alloc rx_opaque_copy +rx_opaque_free rx_opaque_freeContents +rx_opaque_new rx_opaque_populate rx_queryPeerRPCStats rx_queryProcessRPCStats rx_socket rx_stackSize rx_tranquil +rxevent_Cancel +rxevent_Init +rxevent_Post +rxevent_Put +rxevent_RaiseEvents rxevent_debugFile rxi_Alloc rxi_AllocDataBuf diff --git a/src/rxkad/liboafs_rxkad.la.sym b/src/rxkad/liboafs_rxkad.la.sym index cfcc5850e9..81d90a139e 100644 --- a/src/rxkad/liboafs_rxkad.la.sym +++ b/src/rxkad/liboafs_rxkad.la.sym @@ -4,6 +4,7 @@ rxkad_GetServerInfo rxkad_NewClientSecurityObject rxkad_NewKrb5ServerSecurityObject rxkad_NewServerSecurityObject +rxkad_StringToLevel time_to_life tkt_CheckTimes tkt_DeriveDesKey diff --git a/src/ubik/liboafs_ubik.la.sym b/src/ubik/liboafs_ubik.la.sym index 679bad64ab..b06eb5d341 100644 --- a/src/ubik/liboafs_ubik.la.sym +++ b/src/ubik/liboafs_ubik.la.sym @@ -1,3 +1,4 @@ +DISK_function_names EndDISK_GetFile StartDISK_GetFile VOTE_Debug @@ -7,6 +8,7 @@ VOTE_SDebug VOTE_SDebugOld VOTE_XDebug VOTE_XSDebug +VOTE_function_names initialize_U_error_table ubik_AbortTrans ubik_BeginTrans diff --git a/src/util/liboafs_util.la.sym b/src/util/liboafs_util.la.sym index 62c95ce9b6..04842e6ebf 100644 --- a/src/util/liboafs_util.la.sym +++ b/src/util/liboafs_util.la.sym @@ -2,7 +2,13 @@ Add_RelDate_to_Time BufioClose BufioGets BufioOpen +CloseLog +ConstructLocalPath +FilepathNormalize FSLog +GetLogDest +GetLogFilename +GetLogLevel Int32To_ktimeRelDate LogCommandLine LogLevel diff --git a/src/volser/liboafs_volser.la.sym b/src/volser/liboafs_volser.la.sym index f827c6d84b..31ace7fad6 100644 --- a/src/volser/liboafs_volser.la.sym +++ b/src/volser/liboafs_volser.la.sym @@ -1,7 +1,11 @@ AFSVolConvertROtoRWvolume AFSVolEndTrans AFSVolListOneVolume +AFSVolListPartitions +AFSVolPartitionInfo +AFSVolPartitionInfo64 AFSVolTransCreate +AFSVolXListPartitions EnumerateEntry Lp_GetRwIndex Lp_ROMatch