if(copy_from_user(&set.sig[0], oldmask, sizeof(&set.sig[0])) || 
if(copy_from_user(&set.sig[0], oldmask, sizeof(set.sig[0])) || 
long sys_sigreturn(struct pt_regs regs){	unsigned long sp = PT_REGS_SP(&current->thread.regs);	struct sigframe __user *frame = (struct sigframe *)(sp - 8);	sigset_t set;	struct sigcontext __user *sc = &frame->sc;	unsigned long __user *oldmask = &sc->oldmask;	unsigned long __user *extramask = frame->extramask;	int sig_size = (_NSIG_WORDS - 1) * sizeof(unsigned long);	if(copy_from_user(&set.sig[0], oldmask, sizeof(&set.sig[0])) ||	   copy_from_user(&set.sig[1], extramask, sig_size))		goto segfault;	sigdelsetmask(&set, ~_BLOCKABLE);	spin_lock_irq(&current->sighand->siglock);	current->blocked = set;	recalc_sigpending();	spin_unlock_irq(&current->sighand->siglock);	if(copy_sc_from_user(&current->thread.regs, sc))		goto segfault;	/* Avoid ERESTART handling */	PT_REGS_SYSCALL_NR(&current->thread.regs) = -1;	return(PT_REGS_SYSCALL_RET(&current->thread.regs)); segfault:	force_sig(SIGSEGV, current);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/350d5bd84ecda038bb482ab5f2596bdca68109d9/signal.c/clean/arch/um/sys-i386/signal.c