* [PATCH libibmad] portid.c: Preserve routepath string in str2drpath
@ 2015-04-29 11:12 Hal Rosenstock
[not found] ` <5540BC87.3020903-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
0 siblings, 1 reply; 2+ messages in thread
From: Hal Rosenstock @ 2015-04-29 11:12 UTC (permalink / raw)
To: Ira Weiny
Cc: Vladimir Koushnir,
linux-rdma (linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org)
From: Vladimir Koushnir <vladimirk-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Date: Tue, 28 Apr 2015 18:35:28 +0300
In str2drpath, preserve routepath string rather than
modifying it.
Signed-off-by: Vladimir Koushnir <vladimirk-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Signed-off-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
---
src/portid.c | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/src/portid.c b/src/portid.c
index ceb685e..40754fe 100644
--- a/src/portid.c
+++ b/src/portid.c
@@ -82,11 +82,18 @@ char *portid2str(ib_portid_t * portid)
int str2drpath(ib_dr_path_t * path, char *routepath, int drslid, int drdlid)
{
- char *s, *str = routepath;
+ char *s, *str;
+ char *tmp;
path->cnt = -1;
+ if (!routepath || !(tmp = strdup(routepath)))
+ goto Exit;
+
DEBUG("DR str: %s", routepath);
+
+ str = tmp;
+
while (str && *str) {
if ((s = strchr(str, ',')))
*s = 0;
@@ -95,7 +102,9 @@ int str2drpath(ib_dr_path_t * path, char *routepath, int drslid, int drdlid)
break;
str = s + 1;
}
+ free(tmp);
+Exit:
path->drdlid = drdlid ? drdlid : 0xffff;
path->drslid = drslid ? drslid : 0xffff;
--
1.7.8.2
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 2+ messages in thread[parent not found: <5540BC87.3020903-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>]
* Re: [PATCH libibmad] portid.c: Preserve routepath string in str2drpath [not found] ` <5540BC87.3020903-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org> @ 2015-07-15 15:41 ` ira.weiny 0 siblings, 0 replies; 2+ messages in thread From: ira.weiny @ 2015-07-15 15:41 UTC (permalink / raw) To: Hal Rosenstock Cc: Vladimir Koushnir, linux-rdma (linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org) On Wed, Apr 29, 2015 at 07:12:07AM -0400, Hal Rosenstock wrote: > From: Vladimir Koushnir <vladimirk-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> > Date: Tue, 28 Apr 2015 18:35:28 +0300 > > In str2drpath, preserve routepath string rather than > modifying it. > > Signed-off-by: Vladimir Koushnir <vladimirk-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> > Signed-off-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> Thanks applied, Ira > --- > src/portid.c | 11 ++++++++++- > 1 files changed, 10 insertions(+), 1 deletions(-) > > diff --git a/src/portid.c b/src/portid.c > index ceb685e..40754fe 100644 > --- a/src/portid.c > +++ b/src/portid.c > @@ -82,11 +82,18 @@ char *portid2str(ib_portid_t * portid) > > int str2drpath(ib_dr_path_t * path, char *routepath, int drslid, int drdlid) > { > - char *s, *str = routepath; > + char *s, *str; > + char *tmp; > > path->cnt = -1; > > + if (!routepath || !(tmp = strdup(routepath))) > + goto Exit; > + > DEBUG("DR str: %s", routepath); > + > + str = tmp; > + > while (str && *str) { > if ((s = strchr(str, ','))) > *s = 0; > @@ -95,7 +102,9 @@ int str2drpath(ib_dr_path_t * path, char *routepath, int drslid, int drdlid) > break; > str = s + 1; > } > + free(tmp); > > +Exit: > path->drdlid = drdlid ? drdlid : 0xffff; > path->drslid = drslid ? drslid : 0xffff; > > -- > 1.7.8.2 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-07-15 15:41 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-29 11:12 [PATCH libibmad] portid.c: Preserve routepath string in str2drpath Hal Rosenstock
[not found] ` <5540BC87.3020903-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-07-15 15:41 ` ira.weiny
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox