From 187e25e65832812b5b68838bb6ef64f49b12c749 Mon Sep 17 00:00:00 2001 From: Duncan Laurie Date: Mon, 26 Jan 2004 17:22:54 +0000 Subject: [PATCH] use $name_intf_setup and create weak alias to intf_setup for each interface so we don't have conflicts when both are compiled statically --- ipmitool/src/plugins/lan/lan.c | 3 ++- ipmitool/src/plugins/lan/lan.h | 1 + ipmitool/src/plugins/open/open.c | 4 +++- ipmitool/src/plugins/open/open.h | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ipmitool/src/plugins/lan/lan.c b/ipmitool/src/plugins/lan/lan.c index 955c78e..958d554 100644 --- a/ipmitool/src/plugins/lan/lan.c +++ b/ipmitool/src/plugins/lan/lan.c @@ -1161,9 +1161,10 @@ int ipmi_lan_open(struct ipmi_intf * intf, char * hostname, int port, char * use return intf->fd; } -int intf_setup(struct ipmi_intf ** intf) +int lan_intf_setup(struct ipmi_intf ** intf) { *intf = &ipmi_lan_intf; return 0; } +int intf_setup(struct ipmi_intf ** intf) __attribute__ ((weak, alias("lan_intf_setup"))); diff --git a/ipmitool/src/plugins/lan/lan.h b/ipmitool/src/plugins/lan/lan.h index 540fee8..14b3449 100644 --- a/ipmitool/src/plugins/lan/lan.h +++ b/ipmitool/src/plugins/lan/lan.h @@ -68,6 +68,7 @@ void ipmi_lan_close(struct ipmi_intf * intf); void ipmi_get_channel_info(struct ipmi_intf * intf, unsigned char channel); int ipmi_lan_ping(struct ipmi_intf * intf); +int lan_intf_setup(struct ipmi_intf ** intf); struct ipmi_intf ipmi_lan_intf; #endif /*IPMI_LAN_H*/ diff --git a/ipmitool/src/plugins/open/open.c b/ipmitool/src/plugins/open/open.c index 1ebad55..aa8cc71 100644 --- a/ipmitool/src/plugins/open/open.c +++ b/ipmitool/src/plugins/open/open.c @@ -174,8 +174,10 @@ struct ipmi_rs * ipmi_openipmi_send_cmd(struct ipmi_intf * intf, struct ipmi_rq return &rsp; } -int intf_setup(struct ipmi_intf ** intf) +int open_intf_setup(struct ipmi_intf ** intf) { *intf = &ipmi_openipmi_intf; return 0; } + +int intf_setup(struct ipmi_intf ** intf) __attribute__ ((weak, alias("open_intf_setup"))); diff --git a/ipmitool/src/plugins/open/open.h b/ipmitool/src/plugins/open/open.h index 377a318..d64e2ee 100644 --- a/ipmitool/src/plugins/open/open.h +++ b/ipmitool/src/plugins/open/open.h @@ -44,5 +44,6 @@ struct ipmi_rs * ipmi_openipmi_send_cmd(struct ipmi_intf * intf, struct ipmi_rq * req); int ipmi_openipmi_open(struct ipmi_intf * intf, char * dev, int __unused1, char * __unused2, char * __unused3); void ipmi_openipmi_close(struct ipmi_intf * intf); +int open_intf_setup(struct ipmi_intf ** intf); #endif