Re: KITTEN: IETF 75 - 76

Michael B Allen <miallen@ioplex.com> Thu, 03 September 2009 04:43 UTC

Return-Path: <miallen@ioplex.com>
X-Original-To: kitten@core3.amsl.com
Delivered-To: kitten@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B90593A690B for <kitten@core3.amsl.com>; Wed, 2 Sep 2009 21:43:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.227
X-Spam-Level:
X-Spam-Status: No, score=-2.227 tagged_above=-999 required=5 tests=[AWL=0.328, BAYES_00=-2.599, DATE_IN_PAST_03_06=0.044]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7wt7IzaUvLpN for <kitten@core3.amsl.com>; Wed, 2 Sep 2009 21:43:29 -0700 (PDT)
Received: from mail.ioplex.com (li31-113.members.linode.com [207.192.69.113]) by core3.amsl.com (Postfix) with ESMTP id A72183A6AF7 for <kitten@ietf.org>; Wed, 2 Sep 2009 21:43:26 -0700 (PDT)
Received: from proton.foo.net (pool-71-187-189-103.nwrknj.fios.verizon.net [71.187.189.103]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: miallen) by mail.ioplex.com (Postfix) with ESMTP id 27179411FF; Wed, 2 Sep 2009 21:12:00 -0400 (EDT)
Date: Wed, 02 Sep 2009 21:12:00 -0400
From: Michael B Allen <miallen@ioplex.com>
To: Nicolas Williams <Nicolas.Williams@sun.com>
Subject: Re: KITTEN: IETF 75 - 76
Message-Id: <20090902211200.8a2dd378.miallen@ioplex.com>
In-Reply-To: <20090902212652.GX1033@Sun.COM>
References: <200908180013.29152.leifj@mnt.se> <20090901131202.137bdd90.miallen@ioplex.com> <20090901173110.GL1033@Sun.COM> <396484EF-9812-40CE-9221-F1A1319FD10B@kth.se> <20090901181307.fe1d4efa.miallen@ioplex.com> <98F14484-1B48-45A1-86E7-5E78383F5109@kth.se> <20090901214059.17a309e6.miallen@ioplex.com> <4A9E22D9.9050405@samba.org> <20090902153241.GJ1033@Sun.COM> <20090902172015.da056c19.miallen@ioplex.com> <20090902212652.GX1033@Sun.COM>
Organization: IOPLEX Software
X-Mailer: Sylpheed 2.6.0 (GTK+ 2.12.12; i386-redhat-linux-gnu)
Mime-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit
Cc: "kitten@ietf.org" <kitten@ietf.org>, Love, Volker Lendecke <vl@SerNet.DE>
X-BeenThere: kitten@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Common Authentication Technologies - Next Generation <kitten.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/kitten>, <mailto:kitten-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/kitten>
List-Post: <mailto:kitten@ietf.org>
List-Help: <mailto:kitten-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/kitten>, <mailto:kitten-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 03 Sep 2009 04:43:35 -0000

On Wed, 2 Sep 2009 16:26:52 -0500
Nicolas Williams <Nicolas.Williams@sun.com> wrote:

> On Wed, Sep 02, 2009 at 05:20:15PM -0400, Michael B Allen wrote:
> > There is another model:
> > 
> > > > while (1) {
> >         gss_process_events(&minor, ...);
> > > > ...
> 
> The problem with this model is that it has the GSS-API impose its own
> event loop on the application.  Imagine if every library did that!  An
> application that uses multiple such libraries, where some such libraries
> use other such libraries, would be very difficult to get to work at all,
> particularly without threading or sub-processes.
> 
> I don't understand your aversion to callbacks.  Callbacks are
> exceedingly common in C APIs nowadays, and that's a good thing, IMO.

I think you're exaggerating, if not misrepresenting, the detractions of the NOWAIT flag technique. But it is no matter. For a variety of reasons I will not pursue the issue further.

However, before I go back to lurking, I have to declare that callbacks are NOT simple. They can be quite complicated. Just from looking at function signatures posted in this thread I personally have no idea how these callbacks would actually work. Are they called by another thread, by a signal, through another call or by another caller? Is locking required? What data is safe to modify in the callback? They seem C oriented - do the semantics change if a different language is used like Java? Hopefully the answers to these questions will be clear if these callbacks do end up in a GSSAPI implementations.

Mike

-- 
Michael B Allen
Java Active Directory Integration
http://www.ioplex.com/