mit krb5 and threads - api

Ken Raeburn raeburn at MIT.EDU
Tue Mar 9 18:21:52 EST 2004


On Tuesday, Mar 9, 2004, at 18:16 US/Eastern, Jeffrey Hutzelman wrote:
>> It is because the locks are simple that the problems
>> have occurred.  A thread locks something and calls into
>> a function which then attempts to lock the same thing
>> and deadlocks.
>
> Yeah; this is called improper use of an interface.
> What locks you must or must not hold when calling a function are part 
> of the interface to that function.  It is up to you to use the 
> interface correctly, just as it is up to you to not pass in 1000000 as 
> the length of a 256-byte buffer.

That's my thinking.  I fully expect that we will wind up needing 
locking (for applications) and unlocking (for internal use) variants of 
some routines.

Ken



More information about the krbdev mailing list