Signed-off-by: Richard Cochran <[email protected]>
---
pmc.c | 6 ++++--
pmc_agent.c | 3 ++-
pmc_common.c | 8 ++++----
pmc_common.h | 6 +++---
tz2alt.c | 3 ++-
uds.c | 6 ++++--
6 files changed, 19 insertions(+), 13 deletions(-)
diff --git a/pmc.c b/pmc.c
index 9faf790..d18fea0 100644
--- a/pmc.c
+++ b/pmc.c
@@ -823,8 +823,10 @@ int main(int argc, char *argv[])
print_set_syslog(1);
print_set_verbose(1);
- pmc = pmc_create(cfg, transport_type, iface_name, boundary_hops,
- domain_number, transport_specific, zero_datalen);
+ pmc = pmc_create(cfg, transport_type, iface_name,
+ config_get_string(cfg, NULL, "uds_address"),
+ boundary_hops, domain_number, transport_specific,
+ zero_datalen);
if (!pmc) {
fprintf(stderr, "failed to create pmc\n");
config_destroy(cfg);
diff --git a/pmc_agent.c b/pmc_agent.c
index 494c174..fec6dea 100644
--- a/pmc_agent.c
+++ b/pmc_agent.c
@@ -232,7 +232,8 @@ int run_pmc_wait_sync(struct pmc_agent *node, int timeout)
int init_pmc_node(struct config *cfg, struct pmc_agent *node, const char *uds,
pmc_node_recv_subscribed_t *recv_subscribed, void *context)
{
- node->pmc = pmc_create(cfg, TRANS_UDS, uds, 0,
+ node->pmc = pmc_create(cfg, TRANS_UDS, uds,
+ config_get_string(cfg, NULL, "uds_address"), 0,
config_get_int(cfg, NULL, "domainNumber"),
config_get_int(cfg, NULL, "transportSpecific")
<< 4, 1);
if (!node->pmc) {
diff --git a/pmc_common.c b/pmc_common.c
index 5092c09..fca16c6 100644
--- a/pmc_common.c
+++ b/pmc_common.c
@@ -488,9 +488,9 @@ struct pmc {
};
struct pmc *pmc_create(struct config *cfg, enum transport_type transport_type,
- const char *iface_name, UInteger8 boundary_hops,
- UInteger8 domain_number, UInteger8 transport_specific,
- int zero_datalen)
+ const char *iface_name, const char *remote_address,
+ UInteger8 boundary_hops, UInteger8 domain_number,
+ UInteger8 transport_specific, int zero_datalen)
{
struct pmc *pmc;
UInteger32 proc_id;
@@ -524,7 +524,7 @@ struct pmc *pmc_create(struct config *cfg, enum
transport_type transport_type,
goto failed;
}
- pmc->iface = interface_create(iface_name, NULL);
+ pmc->iface = interface_create(iface_name, remote_address);
if (!pmc->iface) {
pr_err("failed to create interface");
goto failed;
diff --git a/pmc_common.h b/pmc_common.h
index 6fb2fae..355b2c0 100644
--- a/pmc_common.h
+++ b/pmc_common.h
@@ -29,9 +29,9 @@
struct pmc;
struct pmc *pmc_create(struct config *cfg, enum transport_type transport_type,
- const char *iface_name, UInteger8 boundary_hops,
- UInteger8 domain_number, UInteger8 transport_specific,
- int zero_datalen);
+ const char *iface_name, const char *remote_address,
+ UInteger8 boundary_hops, UInteger8 domain_number,
+ UInteger8 transport_specific, int zero_datalen);
void pmc_destroy(struct pmc *pmc);
diff --git a/tz2alt.c b/tz2alt.c
index feb77a5..65b5835 100644
--- a/tz2alt.c
+++ b/tz2alt.c
@@ -181,7 +181,8 @@ static int update_ptp_serivce(struct tzinfo *tz, struct
tzinfo *next)
struct pmc *pmc;
int err;
- pmc = pmc_create(cfg, TRANS_UDS, uds_local, 0,
+ pmc = pmc_create(cfg, TRANS_UDS, uds_local,
+ config_get_string(cfg, NULL, "uds_address"), 0,
config_get_int(cfg, NULL, "domainNumber"),
config_get_int(cfg, NULL, "transportSpecific") << 4,
1);
if (!pmc) {
diff --git a/uds.c b/uds.c
index 6d39dc8..fafb100 100644
--- a/uds.c
+++ b/uds.c
@@ -54,7 +54,7 @@ static int uds_open(struct transport *t, struct interface
*iface, struct fdarray
enum timestamp_type tt)
{
char *uds_ro_path = config_get_string(t->cfg, NULL, "uds_ro_address");
- char *uds_path = config_get_string(t->cfg, NULL, "uds_address");
+ const char *uds_path = interface_remote(iface);
struct uds *uds = container_of(t, struct uds, t);
const char *name = interface_name(iface);
const char* file_mode_cfg;
@@ -89,7 +89,9 @@ static int uds_open(struct transport *t, struct interface
*iface, struct fdarray
/* For client use, pre load the server path. */
memset(&sa, 0, sizeof(sa));
sa.sun_family = AF_LOCAL;
- strncpy(sa.sun_path, uds_path, sizeof(sa.sun_path) - 1);
+ if (uds_path) {
+ strncpy(sa.sun_path, uds_path, sizeof(sa.sun_path) - 1);
+ }
uds->address.sun = sa;
uds->address.len = sizeof(sa);
--
2.39.2
_______________________________________________
Linuxptp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel