unsigned ReqProg_go( void ) { prog_go_ret *ret; unsigned len; if( !TaskLoaded ) { ret = GetOutPtr( 0 ); ret->conditions = COND_TERMINATE; return( sizeof( *ret ) ); } RestoreVectors( CurrVectors ); len = DoAccess(); SaveVectors( CurrVectors ); RestoreVectors( LoadVectors ); return( len ); }
unsigned ReqProg_kill( void ) { int len; prog_kill_ret *ret; if( !TaskLoaded ) { ret = GetOutPtr( 0 ); ret->err = 0; return( sizeof( *ret ) ); } len = DoAccess(); RemoteUnLink(); TaskLoaded = FALSE; RestoreVectors( OrigVectors ); return( len ); }
trap_retval ReqProg_kill( void ) { trap_elen len; prog_kill_ret *ret; if( !TaskLoaded ) { ret = GetOutPtr( 0 ); ret->err = 0; return( sizeof( *ret ) ); } len = DoAccess(); RemoteUnLink(); TaskLoaded = false; RestoreVectors( OrigVectors ); return( len ); }