Diff

Differences From Artifact [7fc2407cf2]:

To Artifact [32a975c668]:


6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404


6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465

6466
6467
6468
6469
6470
6471
6472
		     * Really hideous method of translating the
		     * signal description back into a locally
		     * meaningful number.
		     */

		    if (0)
			;
#ifdef SIGABRT
		    else if (siglen == lenof("ABRT")-1 &&
			     !memcmp(sig, "ABRT", siglen))
			ssh->exitcode = 128 + SIGABRT;


#endif
#ifdef SIGALRM
		    else if (siglen == lenof("ALRM")-1 &&
			     !memcmp(sig, "ALRM", siglen))
			ssh->exitcode = 128 + SIGALRM;
#endif
#ifdef SIGFPE
		    else if (siglen == lenof("FPE")-1 &&
			     !memcmp(sig, "FPE", siglen))
			ssh->exitcode = 128 + SIGFPE;
#endif
#ifdef SIGHUP
		    else if (siglen == lenof("HUP")-1 &&
			     !memcmp(sig, "HUP", siglen))
			ssh->exitcode = 128 + SIGHUP;
#endif
#ifdef SIGILL
		    else if (siglen == lenof("ILL")-1 &&
			     !memcmp(sig, "ILL", siglen))
			ssh->exitcode = 128 + SIGILL;
#endif
#ifdef SIGINT
		    else if (siglen == lenof("INT")-1 &&
			     !memcmp(sig, "INT", siglen))
			ssh->exitcode = 128 + SIGINT;
#endif
#ifdef SIGKILL
		    else if (siglen == lenof("KILL")-1 &&
			     !memcmp(sig, "KILL", siglen))
			ssh->exitcode = 128 + SIGKILL;
#endif
#ifdef SIGPIPE
		    else if (siglen == lenof("PIPE")-1 &&
			     !memcmp(sig, "PIPE", siglen))
			ssh->exitcode = 128 + SIGPIPE;
#endif
#ifdef SIGQUIT
		    else if (siglen == lenof("QUIT")-1 &&
			     !memcmp(sig, "QUIT", siglen))
			ssh->exitcode = 128 + SIGQUIT;
#endif
#ifdef SIGSEGV
		    else if (siglen == lenof("SEGV")-1 &&
			     !memcmp(sig, "SEGV", siglen))
			ssh->exitcode = 128 + SIGSEGV;
#endif
#ifdef SIGTERM
		    else if (siglen == lenof("TERM")-1 &&
			     !memcmp(sig, "TERM", siglen))
			ssh->exitcode = 128 + SIGTERM;
#endif
#ifdef SIGUSR1
		    else if (siglen == lenof("USR1")-1 &&
			     !memcmp(sig, "USR1", siglen))
			ssh->exitcode = 128 + SIGUSR1;
#endif
#ifdef SIGUSR2
		    else if (siglen == lenof("USR2")-1 &&
			     !memcmp(sig, "USR2", siglen))
			ssh->exitcode = 128 + SIGUSR2;
#endif

		    else
			ssh->exitcode = 128;
		}
		core = ssh2_pkt_getbool(pktin);
		ssh_pkt_getstring(pktin, &msg, &msglen);
		if (msglen) {
		    fmt_msg = dupprintf(" (\"%.*s\")", msglen, msg);







|
|
<
|
>
>


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<


<
|
<

>







6394
6395
6396
6397
6398
6399
6400
6401
6402

6403
6404
6405
6406
6407

6408

6409
6410

6411

6412
6413

6414

6415
6416

6417

6418
6419

6420

6421
6422

6423

6424
6425

6426

6427
6428

6429

6430
6431

6432

6433
6434

6435

6436
6437

6438

6439
6440

6441

6442
6443
6444
6445
6446
6447
6448
6449
6450
		     * Really hideous method of translating the
		     * signal description back into a locally
		     * meaningful number.
		     */

		    if (0)
			;
#define TRANSLATE_SIGNAL(s) \
    else if (siglen == lenof(#s)-1 && !memcmp(sig, #s, siglen)) \

        ssh->exitcode = 128 + SIG ## s
#ifdef SIGABRT
		    TRANSLATE_SIGNAL(ABRT);
#endif
#ifdef SIGALRM

		    TRANSLATE_SIGNAL(ALRM);

#endif
#ifdef SIGFPE

		    TRANSLATE_SIGNAL(FPE);

#endif
#ifdef SIGHUP

		    TRANSLATE_SIGNAL(HUP);

#endif
#ifdef SIGILL

		    TRANSLATE_SIGNAL(ILL);

#endif
#ifdef SIGINT

		    TRANSLATE_SIGNAL(INT);

#endif
#ifdef SIGKILL

		    TRANSLATE_SIGNAL(KILL);

#endif
#ifdef SIGPIPE

		    TRANSLATE_SIGNAL(PIPE);

#endif
#ifdef SIGQUIT

		    TRANSLATE_SIGNAL(QUIT);

#endif
#ifdef SIGSEGV

		    TRANSLATE_SIGNAL(SEGV);

#endif
#ifdef SIGTERM

		    TRANSLATE_SIGNAL(TERM);

#endif
#ifdef SIGUSR1

		    TRANSLATE_SIGNAL(USR1);

#endif
#ifdef SIGUSR2

		    TRANSLATE_SIGNAL(USR2);

#endif
#undef TRANSLATE_SIGNAL
		    else
			ssh->exitcode = 128;
		}
		core = ssh2_pkt_getbool(pktin);
		ssh_pkt_getstring(pktin, &msg, &msglen);
		if (msglen) {
		    fmt_msg = dupprintf(" (\"%.*s\")", msglen, msg);