From: Mark W. <mew...@un...> - 2000-07-03 21:54:54
|
On Mon, 3 Jul 2000, Allen, Robbie wrote: > > From: Mark Wilcox [mailto:mew...@un...] > > > > It should be integrated into the search method via a control as it is > > now. The purpose of controls is to enxtend or enhance the > > functionality of a particular LDAP operation. > > I don't see the harm in having it as an extra option to the search > method. Of course you'd want to keep the traditional control mechanism > as it is today. The primary reason why I think this is a good idea is > because many times, when developing automation processes around a > directory, you want to be sure to get all objects that match a search, > not what is imposed by the server limit. The harm is that it uncssesarily bloats the API. Net::LDAP is a low-level API, not a higher level API like ADSI or JNDI which it sounds like you want. And as Graham & I've pointed out, where does it stop? If you want to get all of the values from a search you must use the tools LDAP provides, which means control, if your server supports it. Not all servers support them. And even if they do, it doesn't mean all searches can use them (e.g. they might be limited to only a particular set of users). If you want to use LDAP, then you must learn the ins and outs, which means controls. The average joe will either learn controls or they won't. They are optional and you can still program LDAP successfully without them. I think what you really want is a higher-level API than Net::LDAP, which operates on a pretty low level. The higher-level API would wrap around NEt::LDAP (or it could also include other directory services), this would make it similar to ADSI or JNDI. That I would support. I just can't add my support to adding built in controls to Net::LDAP. Now if a particular control was added to all servers (e.g. the LDAP RFCs were changed to say that all servers MUST support the VLV or Paged control), then I'd say of course we should make it integrated because then they literally would be a part of a standard operation. But until then, I think the search API is fine. I think we should instead concentrate on making sure the controls work and documenting the existing control structure. And perhaps revisit this issue in the future if more people think it's a good idea. Mark |