Displaying 13 results from an estimated 13 matches for "ncmd".
Did you mean:
cmd
2009 Jan 26
1
ups emerson liebert GTX2 ESP-II serial protocol demo
...l/)
Spiros Ioannou, sivann at gmail.com 2009
Compile with: gcc -O2 upsesp2.c -o upsesp2
Run with: ./upsesp2 /dev/ttyS0 Replace ttyS0 with your serial port (ttyS1, ...etc).
*/
#define BAUDRATE B2400
#define _POSIX_SOURCE 1 /* POSIX compliant source */
#define FALSE 0
#define TRUE 1
#define NCMD 100 /*max number of commands*/
#define MAXAGE 5 /*max seconds to accept data as current*/
#define IsBitSet(val, bit) ((val) & (1 << (bit)))
char str[128];
/***************************************************/
typedef struct
{
char descr[120];
unsigned char type; /*0:measurement, 1...
2020 Mar 28
0
[klibc:update-dash] dash: eval: Fail immediately with redirections errors for simple command
...++++++++++++------------------
1 file changed, 18 insertions(+), 18 deletions(-)
diff --git a/usr/dash/eval.c b/usr/dash/eval.c
index 9e88fef2..fc5a594a 100644
--- a/usr/dash/eval.c
+++ b/usr/dash/eval.c
@@ -818,6 +818,17 @@ evalcommand(union node *cmd, int flags)
redir_stop = pushredir(cmd->ncmd.redirect);
status = redirectsafe(cmd->ncmd.redirect, REDIR_PUSH|REDIR_SAVEFD2);
+ if (status) {
+bail:
+ exitstatus = status;
+
+ /* We have a redirection error. */
+ if (spclbltin > 0)
+ exraise(EXERROR);
+
+ goto out;
+ }
+
for (argp = cmd->ncmd.assign; argp; argp = argp->...
2020 Mar 28
0
[klibc:update-dash] dash: eval: Add assignment built-in support again
...+----
usr/dash/exec.h | 2 +-
usr/dash/parser.c | 3 +-
usr/dash/parser.h | 1 +
5 files changed, 97 insertions(+), 75 deletions(-)
diff --git a/usr/dash/eval.c b/usr/dash/eval.c
index ff27ba9c..9e88fef2 100644
--- a/usr/dash/eval.c
+++ b/usr/dash/eval.c
@@ -100,8 +100,9 @@ STATIC int bltincmd(int, char **);
STATIC const struct builtincmd bltin = {
- name: nullstr,
- builtin: bltincmd
+ .name = nullstr,
+ .builtin = bltincmd,
+ .flags = BUILTIN_REGULAR,
};
@@ -648,22 +649,42 @@ out:
result->fd, result->buf, result->nleft, result->jp));
}
-static char **
-parse...
2020 Mar 28
0
[klibc:update-dash] dash: eval: Replace with listsetvar with mklocal/setvareq
...letions(-)
diff --git a/usr/dash/eval.c b/usr/dash/eval.c
index fc5a594a..77a8bded 100644
--- a/usr/dash/eval.c
+++ b/usr/dash/eval.c
@@ -737,6 +737,8 @@ evalcommand(union node *cmd, int flags)
int execcmd;
int status;
char **nargv;
+ int vflags;
+ int vlocal;
errlinno = lineno = cmd->ncmd.linno;
if (funcline)
@@ -745,7 +747,6 @@ evalcommand(union node *cmd, int flags)
/* First expand the arguments. */
TRACE(("evalcommand(0x%lx, %d) called\n", (long)cmd, flags));
setstackmark(&smark);
- localvar_stop = pushlocalvars();
file_stop = parsefile;
back_exitstatus...
2020 Mar 28
0
[klibc:update-dash] dash: eval: Always set localvar_stop
...int flags)
vflags = VEXPORT;
}
+ localvar_stop = pushlocalvars(vlocal);
+
/* Reserve one extra spot at the front for shellexec. */
nargv = stalloc(sizeof (char *) * (argc + 2));
argv = ++nargv;
@@ -828,7 +830,6 @@ evalcommand(union node *cmd, int flags)
status = redirectsafe(cmd->ncmd.redirect, REDIR_PUSH|REDIR_SAVEFD2);
if (unlikely(status)) {
- vlocal = 0;
bail:
exitstatus = status;
@@ -839,9 +840,6 @@ bail:
goto out;
}
- if (likely(vlocal))
- localvar_stop = pushlocalvars();
-
for (argp = cmd->ncmd.assign; argp; argp = argp->narg.next) {
struct s...
2019 Jan 25
0
[klibc:update-dash] eval: Restore input files in evalcommand
...evalcommand(union node *cmd, int flags)
TRACE(("evalcommand(0x%lx, %d) called\n", (long)cmd, flags));
setstackmark(&smark);
localvar_stop = pushlocalvars();
+ file_stop = parsefile;
back_exitstatus = 0;
cmdentry.cmdtype = CMDBUILTIN;
@@ -896,6 +898,7 @@ out:
if (cmd->ncmd.redirect)
popredir(execcmd);
unwindredir(redir_stop);
+ unwindfiles(file_stop);
unwindlocalvars(localvar_stop);
if (lastarg)
/* dsl: I think this is intended to be used to support
diff --git a/usr/dash/input.c b/usr/dash/input.c
index e53423c5..ae0c4c80 100644
--- a/usr/dash/input.c
+++...
2019 Jan 25
0
[klibc:update-dash] jobs - Do not block when waiting on SIGCHLD
...FORCEINTON;
- break;
- }
+ if (evalbltin(cmdentry.u.cmd, argc, argv, flags) &&
+ !(exception == EXERROR && spclbltin <= 0)) {
raise:
longjmp(handler->loc, 1);
}
@@ -892,6 +887,7 @@ raise:
}
status = waitforjob(jp);
+ FORCEINTON;
out:
if (cmd->ncmd.redirect)
diff --git a/usr/dash/jobs.c b/usr/dash/jobs.c
index 4548ae69..2b8e1afe 100644
--- a/usr/dash/jobs.c
+++ b/usr/dash/jobs.c
@@ -974,10 +974,17 @@ waitforjob(struct job *jp)
int st;
TRACE(("waitforjob(%%%d) called\n", jp ? jobno(jp) : 0));
- while ((jp && jp->stat...
2020 Mar 28
0
[klibc:update-dash] dash: eval: Restore input files in evalcommand
...evalcommand(union node *cmd, int flags)
TRACE(("evalcommand(0x%lx, %d) called\n", (long)cmd, flags));
setstackmark(&smark);
localvar_stop = pushlocalvars();
+ file_stop = parsefile;
back_exitstatus = 0;
cmdentry.cmdtype = CMDBUILTIN;
@@ -896,6 +898,7 @@ out:
if (cmd->ncmd.redirect)
popredir(execcmd);
unwindredir(redir_stop);
+ unwindfiles(file_stop);
unwindlocalvars(localvar_stop);
if (lastarg)
/* dsl: I think this is intended to be used to support
diff --git a/usr/dash/input.c b/usr/dash/input.c
index e53423c5..ae0c4c80 100644
--- a/usr/dash/input.c
+++...
2020 Mar 28
0
[klibc:update-dash] dash: jobs - Do not block when waiting on SIGCHLD
...FORCEINTON;
- break;
- }
+ if (evalbltin(cmdentry.u.cmd, argc, argv, flags) &&
+ !(exception == EXERROR && spclbltin <= 0)) {
raise:
longjmp(handler->loc, 1);
}
@@ -892,6 +887,7 @@ raise:
}
status = waitforjob(jp);
+ FORCEINTON;
out:
if (cmd->ncmd.redirect)
diff --git a/usr/dash/jobs.c b/usr/dash/jobs.c
index 3ea7e122..400628ff 100644
--- a/usr/dash/jobs.c
+++ b/usr/dash/jobs.c
@@ -974,10 +974,17 @@ waitforjob(struct job *jp)
int st;
TRACE(("waitforjob(%%%d) called\n", jp ? jobno(jp) : 0));
- while ((jp && jp->stat...
2019 Jan 25
0
[klibc:update-dash] eval: Reap zombies after built-in commands and functions
...reak;
}
raise:
longjmp(handler->loc, 1);
}
- goto readstatus;
+ break;
case CMDFUNCTION:
poplocalvars(1);
if (evalfun(cmdentry.u.func, argc, argv, flags))
goto raise;
-readstatus:
- status = exitstatus;
break;
}
+ status = waitforjob(jp);
+
out:
if (cmd->ncmd.redirect)
popredir(execcmd);
diff --git a/usr/dash/jobs.c b/usr/dash/jobs.c
index a2602bae..4548ae69 100644
--- a/usr/dash/jobs.c
+++ b/usr/dash/jobs.c
@@ -53,6 +53,7 @@
#include <termios.h>
#undef CEOF /* syntax.h redefines this */
#endif
+#include "eval.h"
#include "...
2020 Mar 28
0
[klibc:update-dash] dash: eval: Reap zombies after built-in commands and functions
...reak;
}
raise:
longjmp(handler->loc, 1);
}
- goto readstatus;
+ break;
case CMDFUNCTION:
poplocalvars(1);
if (evalfun(cmdentry.u.func, argc, argv, flags))
goto raise;
-readstatus:
- status = exitstatus;
break;
}
+ status = waitforjob(jp);
+
out:
if (cmd->ncmd.redirect)
popredir(execcmd);
diff --git a/usr/dash/jobs.c b/usr/dash/jobs.c
index 333a2a22..3ea7e122 100644
--- a/usr/dash/jobs.c
+++ b/usr/dash/jobs.c
@@ -53,6 +53,7 @@
#include <termios.h>
#undef CEOF /* syntax.h redefines this */
#endif
+#include "eval.h"
#include "...
2012 Jul 02
0
[klibc:master] [EVAL] Remove unused EV_BACKCMD flag
...esult)
goto out;
}
-#ifdef notyet
- /*
- * For now we disable executing builtins in the same
- * context as the shell, because we are not keeping
- * enough state to recover from changes that are
- * supposed only to affect subshells. eg. echo "`cd /`"
- */
- if (n->type == NCMD) {
- struct ifsregion saveifs;
- struct ifsregion *savelastp;
- struct nodelist *saveargbackq;
-
- saveifs = ifsfirst;
- savelastp = ifslastp;
- saveargbackq = argbackq;
-
- exitstatus = oexitstatus;
- evalcommand(n, EV_BACKCMD, result);
-
- ifsfirst = saveifs;
- ifslastp = savelastp;
-...
2012 Jun 24
0
nouveau _BIOS method
...OptTbl....INTL
0020: 09 11 06 20 10 46 12 5c 2f 04 5f 53 42 5f 50 43 ... .F.\/._SB_PC
0030: 49 30 50 45 47 30 50 45 47 50 5b 80 50 43 49 5a I0PEG0PEGP[.PCIZ
0040: 00 5c 45 42 41 53 0b 00 05 5b 81 21 50 43 49 5a .\EBAS...[.!PCIZ
0050: 11 56 44 49 44 20 4e 43 4d 44 08 42 44 41 54 40 .VDID NCMD.BDAT@
0060: 7d 00 88 c4 01 00 19 4e 48 44 4d 01 08 42 4b 41 }......NHDM..BKA
0070: 4c 11 04 0a fa 00 14 0f 4e 42 41 4b 00 70 42 44 L.......NBAK.pBD
0080: 41 54 42 4b 41 4c 14 1c 4e 52 53 54 00 70 00 4e ATBKAL..NRST.p.N
0090: 43 4d 44 70 42 4b 41 4c 42 44 41 54 70 0a 06 4e CMDpBKALBDATp....