Module: xenomai-head Branch: master Commit: 2f258700180d902b2ed32184cda797185b62f4d2 URL: http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=2f258700180d902b2ed32184cda797185b62f4d2
Author: Gilles Chanteperdrix <[email protected]> Date: Tue Oct 18 20:01:08 2011 +0200 psos: long/short names issue, take #2 --- src/skins/psos+/init.c | 2 +- src/skins/psos+/queue.c | 4 ++++ src/skins/psos+/rn.c | 4 ++++ src/skins/psos+/sem.c | 4 ++++ src/skins/psos+/task.c | 4 ++++ 5 files changed, 17 insertions(+), 1 deletions(-) diff --git a/src/skins/psos+/init.c b/src/skins/psos+/init.c index e53967b..b72825f 100644 --- a/src/skins/psos+/init.c +++ b/src/skins/psos+/init.c @@ -76,7 +76,7 @@ const char *__psos_maybe_short_name(char shrt[5], const char *lng) if (psos_long_names) return lng; - strncpy(shrt, lng, sizeof(shrt) - 1); + strncpy(shrt, lng, 4); shrt[4] = '\0'; return (const char *)shrt; diff --git a/src/skins/psos+/queue.c b/src/skins/psos+/queue.c index f21a599..9a12da9 100644 --- a/src/skins/psos+/queue.c +++ b/src/skins/psos+/queue.c @@ -38,6 +38,10 @@ u_long q_delete(u_long qid) u_long q_ident(const char *name, u_long nodeno, u_long *qid_r) { + char short_name[5]; + + name = __psos_maybe_short_name(short_name, name); + return XENOMAI_SKINCALL2(__psos_muxid, __psos_q_ident, name, qid_r); } diff --git a/src/skins/psos+/rn.c b/src/skins/psos+/rn.c index 2219f36..e164d03 100644 --- a/src/skins/psos+/rn.c +++ b/src/skins/psos+/rn.c @@ -118,5 +118,9 @@ u_long rn_retseg(u_long rnid, void *chunk) u_long rn_ident(const char name[4], u_long *rnid_r) { + char short_name[5]; + + name = __psos_maybe_short_name(short_name, name); + return XENOMAI_SKINCALL2(__psos_muxid, __psos_rn_ident, name, rnid_r); } diff --git a/src/skins/psos+/sem.c b/src/skins/psos+/sem.c index 0fad0ea..1ca7eec 100644 --- a/src/skins/psos+/sem.c +++ b/src/skins/psos+/sem.c @@ -49,5 +49,9 @@ u_long sm_v(u_long smid) u_long sm_ident(const char *name, u_long nodeno, u_long *smid_r) { + char short_name[5]; + + name = __psos_maybe_short_name(short_name, name); + return XENOMAI_SKINCALL2(__psos_muxid, __psos_sm_ident, name, smid_r); } diff --git a/src/skins/psos+/task.c b/src/skins/psos+/task.c index 2b70b31..82be6ee 100644 --- a/src/skins/psos+/task.c +++ b/src/skins/psos+/task.c @@ -273,6 +273,10 @@ u_long t_getreg(u_long tid, u_long regnum, u_long *regvalue_r) u_long t_ident(const char *name, u_long nodeno, u_long *tid_r) { + char short_name[5]; + + name = __psos_maybe_short_name(short_name, name); + return XENOMAI_SKINCALL2(__psos_muxid, __psos_t_ident, name, tid_r); } _______________________________________________ Xenomai-git mailing list [email protected] https://mail.gna.org/listinfo/xenomai-git
