Lines Matching defs:shp
48 register Shell_t *shp = ((Shbltin_t*)extra)->shp;
113 if(arg=shp->st.trap[sig])
117 if(shp->st.trap[sig])
118 free(shp->st.trap[sig]);
119 shp->st.trap[sig] = 0;
121 shp->st.trap[sig] = strdup(action);
124 if(shp->st.trap[sig])
125 shp->trapnote |= SH_SIGTRAP;
127 shp->trapnote = 0;
131 if(sig>shp->sigmax)
138 char **trapcom = (shp->st.otrapcom?shp->st.otrapcom:shp->st.trapcom);
150 if(sig >= shp->st.trapmax)
151 shp->st.trapmax = sig+1;
152 arg = shp->st.trapcom[sig];
154 shp->st.trapcom[sig] = (shp->sigflag[sig]&SH_SIGOFF) ? Empty : strdup(action);
161 sig_list(shp,-1);
169 register Shell_t *shp = ((Shbltin_t*)extra)->shp;
204 sig_list(shp,0);
208 sig_list(shp,((int)strtol(signame, (char**)0, 10)&0177)+1);
213 shp->exitval = 2;
219 return(shp->exitval);
223 if((sig=sig_number(signame)) < 0 || sig > shp->sigmax)
227 shp->exitval = 1;
228 return(shp->exitval);
354 static void sig_list(register Shell_t *shp,register int flag)
366 for(sig=shp->sigmax; sig>=0; sig--)
392 sig = shp->st.trapmax;
394 trapcom = (shp->st.otrapcom?shp->st.otrapcom:shp->st.trapcom);
399 if(sig > shp->sigmax || !(sname=(char*)names[sig]))
405 if(!(trap=shp->st.trap[sig]))
413 for(sig=1; sig <= shp->sigmax; sig++)