Created ECHO system call for testing purposes.

Furthermore, a quick way to get one's own process number.
This commit is contained in:
Jorrit Herder
2005-05-27 13:57:00 +00:00
parent 07d582872f
commit 8d9c0886cd
7 changed files with 60 additions and 42 deletions

View File

@@ -29,6 +29,7 @@
#include <minix/callnr.h>
#include <minix/com.h>
#include "proc.h"
#include "ipc.h"
#include "sendmask.h"
@@ -99,7 +100,7 @@ message *m_ptr; /* pointer to message in the caller's space */
return(ECALLDENIED); /* SENDREC was required */
/* Verify that requested source and/ or destination is a valid process. */
if (! isoksrc_dst(src_dst))
if (! isoksrc_dst(src_dst) && function != ECHO)
return(EBADSRCDST);
/* Check validity of message pointer. */
@@ -153,6 +154,11 @@ message *m_ptr; /* pointer to message in the caller's space */
case NOTIFY:
result = mini_notify(caller_ptr, src_dst, m_ptr);
break;
case ECHO:
kprintf("Echo message from process %s\n", proc_nr(caller_ptr));
CopyMess(caller_ptr->p_nr, caller_ptr, m_ptr, caller_ptr, m_ptr);
result = OK;
break;
default:
result = EBADCALL; /* illegal system call */
}