From: <mie...@us...> - 2013-07-17 03:15:41
|
Revision: 9367 http://sourceforge.net/p/oorexx/code-0/9367 Author: miesfeld Date: 2013-07-17 03:15:38 +0000 (Wed, 17 Jul 2013) Log Message: ----------- #1190 sysGetErrNoMsg() always returns "Unknown" Modified Paths: -------------- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp Modified: main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp =================================================================== --- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2013-07-16 03:46:30 UTC (rev 9366) +++ main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2013-07-17 03:15:38 UTC (rev 9367) @@ -1568,7 +1568,7 @@ "Operation not possible due to RF-kill", }; - if (en > sizeof(en) / sizeof(char *)) { + if (en >= sizeof(msgs) / sizeof(char *)) { return (RexxObjectPtr)context->NewStringFromAsciiz("Unknown"); } return (RexxObjectPtr)context->NewStringFromAsciiz(msgs[en]); |
From: <wda...@us...> - 2013-11-15 13:59:18
|
Revision: 9510 http://sourceforge.net/p/oorexx/code-0/9510 Author: wdashley Date: 2013-11-15 13:59:15 +0000 (Fri, 15 Nov 2013) Log Message: ----------- Fixed precedence problem reported in bug 1207. Modified Paths: -------------- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp Modified: main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp =================================================================== --- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2013-11-15 02:23:25 UTC (rev 9509) +++ main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2013-11-15 13:59:15 UTC (rev 9510) @@ -811,25 +811,25 @@ } else if (*ichar == 'P' || *ichar == 'p') { // 1- file type - if (S_IFDIR & mystat.st_mode == S_IFDIR) { + if ((S_IFDIR & mystat.st_mode) == S_IFDIR) { strcpy(buf, "d"); } - else if (S_IFCHR & mystat.st_mode == S_IFCHR) { + else if ((S_IFCHR & mystat.st_mode) == S_IFCHR) { strcpy(buf, "c"); } - else if (S_IFBLK & mystat.st_mode == S_IFBLK) { + else if ((S_IFBLK & mystat.st_mode) == S_IFBLK) { strcpy(buf, "b"); } - else if (S_IFIFO & mystat.st_mode == S_IFIFO) { + else if ((S_IFIFO & mystat.st_mode) == S_IFIFO) { strcpy(buf, "p"); } - else if (S_IFREG & mystat.st_mode == S_IFREG) { + else if ((S_IFREG & mystat.st_mode) == S_IFREG) { strcpy(buf, "-"); } - else if (S_IFLNK & mystat.st_mode == S_IFLNK) { + else if ((S_IFLNK & mystat.st_mode) == S_IFLNK) { strcpy(buf, "l"); } - else if (S_IFSOCK & mystat.st_mode == S_IFSOCK) { + else if ((S_IFSOCK & mystat.st_mode) == S_IFSOCK) { strcpy(buf, "s"); } else strcpy(buf, "-"); |
From: <eri...@us...> - 2016-07-05 19:47:33
|
Revision: 11086 http://sourceforge.net/p/oorexx/code-0/11086 Author: erich_st Date: 2016-07-05 19:47:30 +0000 (Tue, 05 Jul 2016) Log Message: ----------- fix bug #1386 SysGetservbyname(...) gives wrong service PORT Modified Paths: -------------- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp Modified: main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp =================================================================== --- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2016-07-05 19:46:20 UTC (rev 11085) +++ main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2016-07-05 19:47:30 UTC (rev 11086) @@ -1019,7 +1019,7 @@ CSTRING, proto, CSTRING, ichar) { - if (strlen(name) == 0 || strlen(proto) == 0 || strlen(ichar) != 1) { + if (strlen(name) == 0 || strlen(proto) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysGetservbyname")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } @@ -1031,7 +1031,7 @@ return (RexxObjectPtr)context->NewStringFromAsciiz(se->s_name); } else if (*ichar == 'P' || *ichar == 'p') { - return (RexxObjectPtr)context->WholeNumberToObject((wholenumber_t)se->s_port); + return (RexxObjectPtr)context->WholeNumberToObject((wholenumber_t)ntohs(se->s_port)); } else if (*ichar == 'A' || *ichar == 'a') { RexxArrayObject arr = context->NewArray(1); @@ -1066,11 +1066,11 @@ CSTRING, proto, CSTRING, ichar) { - if (port == 0 || strlen(proto) == 0 || strlen(ichar) != 1) { + if (port <= 0 || port >= 65535 || strlen(proto) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysGetservbyport")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } - struct servent *se = getservbyport(port, proto); + struct servent *se = getservbyport(htons(port), proto); if (se == NULL) { return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } @@ -1078,7 +1078,7 @@ return (RexxObjectPtr)context->NewStringFromAsciiz(se->s_name); } else if (*ichar == 'P' || *ichar == 'p') { - return (RexxObjectPtr)context->WholeNumberToObject((wholenumber_t)se->s_port); + return (RexxObjectPtr)context->WholeNumberToObject((wholenumber_t)ntohs(se->s_port)); } else if (*ichar == 'A' || *ichar == 'a') { RexxArrayObject arr = context->NewArray(1); |
From: <eri...@us...> - 2016-07-08 21:33:46
|
Revision: 11100 http://sourceforge.net/p/oorexx/code-0/11100 Author: erich_st Date: 2016-07-08 21:33:43 +0000 (Fri, 08 Jul 2016) Log Message: ----------- fixing Unix function options to allow longer than one char as documented Modified Paths: -------------- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp Modified: main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp =================================================================== --- main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2016-07-08 20:00:02 UTC (rev 11099) +++ main/trunk/extensions/platform/unix/rxunixsys/rxunixsys.cpp 2016-07-08 21:33:43 UTC (rev 11100) @@ -603,7 +603,7 @@ CSTRING, user, CSTRING, ichar) { - if (strlen(user) == 0 || strlen(ichar) != 1) { + if (strlen(user) == 0 || strlen(ichar) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysGetpwnam")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } @@ -653,7 +653,7 @@ int, uid, CSTRING, ichar) { - if (strlen(ichar) != 1) { + if (strlen(ichar) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysGetpwuid")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } @@ -703,7 +703,7 @@ CSTRING, grpname, CSTRING, ichar) { - if (strlen(grpname) == 0 || strlen(ichar) != 1) { + if (strlen(grpname) == 0 || strlen(ichar) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysGetgrnam")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } @@ -747,7 +747,7 @@ int, gid, CSTRING, ichar) { - if (strlen(ichar) != 1) { + if (strlen(ichar) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysGetgrgid")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } @@ -795,7 +795,7 @@ struct stat64 mystat; char buf[32]; // used for both the file times and the permissions - if (strlen(fname) == 0 || strlen(ichar) != 1) { + if (strlen(fname) == 0 || strlen(ichar) == 0) { context->RaiseException1(40001, (RexxObjectPtr) context->NewStringFromAsciiz("SysStat")); return (RexxObjectPtr)context->NewStringFromAsciiz("\0"); } |