search for: ncmd

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....