[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

New developer

From: Bas Wijnen
Subject: New developer
Date: Sat, 6 Sep 2003 17:31:40 +0200 (CEST)


I'm a bit new to the hurd (I used it about a year ago), and totally new to 
L4 and L4-hurd (and this list), and would like to help developing it.

I have a few things to say:

I read hurd-on-l4.tex from the cvs, and have one remark about it.  In
section 7.1.1, it says about the proc server: "The thread ID can be
guessed, so there is no point in protecting it."

This doesn't seem entirely correct to me.  Guessing a thread ID will give
you a random thread.  You can check with the task server if it exists, but
you don't have any other info about it (not even which PID it belongs to,
or which user owns it.)  The proc server will reply to a query, probably
coupling a thread ID to a PID.  This coupling is information that cannot
be verified when guessed (if I understand it correctly.)  I know the
grsecurity patch to linux allows you to block other users from getting
process info (like the PID).  I don't know how many people use it and if
it is useful to implement it in the Hurd, but I think there can be a point
in not telling the tread ID in response to a PID.  Please correct me if
I'm wrong.

I have some questions about what I can do, and how.  I'd like to do some 
low level things, like the taskserver, or the auth server.  What should I 
read so I can start with something, with what should I start, and who 
should know about it?  And if I'm forgetting an important question, please 
answer that, too.  And don't forget to tell me the question :-)

Bas Wijnen

/** mastermind. input 4 numbers 0-5. output <right>.<in the right place> **/

 main(){int  c[4]   ,x=3  ,l=getpid()  ,i;;   for(  srand(l);c[  x]=-   rand
()%6         ,x--   ;);;  for(         ;44>   x;){  char         a[9] ,*p=
 "%.1f\n",   b[9];x=i=0;  gets(a);for   (l=4 ;l--   ;)x+=-(a[l]  -=48)==
       (b[l  ]=c[   l]);  ;for           (l=0;16    >i;l         =++i %4)x
+=(b[i/4]+   a[l]   ?0:(  a[l]=b[i/4]     =10))     ;printf(p,x  *.1)   ;};}

/** This signature should be viewed in a monospaced font, e.g. courier.  **/

reply via email to

[Prev in Thread] Current Thread [Next in Thread]