Add name_lookup function in object_ops.

diff --git a/server/object.h b/server/object.h
index 3c9601f..f73d8a1 100644
--- a/server/object.h
+++ b/server/object.h
@@ -45,6 +45,13 @@
 struct async_queue;
 struct winstation;
 
+
+struct unicode_str
+{
+    const WCHAR *str;
+    size_t       len;
+};
+
 /* operations valid on all objects */
 struct object_ops
 {
@@ -64,6 +71,8 @@
     int  (*signal)(struct object *, unsigned int);
     /* return an fd object that can be used to read/write from the object */
     struct fd *(*get_fd)(struct object *);
+    /* lookup a name if an object has a namespace */
+    struct object *(*lookup_name)(struct object *, struct unicode_str *,unsigned int);
     /* close a handle to this object */
     int (*close_handle)(struct object *,struct process *,obj_handle_t);
     /* destroy on refcount == 0 */
@@ -88,12 +97,6 @@
     struct thread  *thread;
 };
 
-struct unicode_str
-{
-    const WCHAR *str;
-    size_t       len;
-};
-
 extern void *mem_alloc( size_t size );  /* malloc wrapper */
 extern void *memdup( const void *data, size_t len );
 extern void *alloc_object( const struct object_ops *ops );
@@ -112,6 +115,7 @@
 extern int no_satisfied( struct object *obj, struct thread *thread );
 extern int no_signal( struct object *obj, unsigned int access );
 extern struct fd *no_get_fd( struct object *obj );
+extern struct object *no_lookup_name( struct object *obj, struct unicode_str *name, unsigned int attributes );
 extern int no_close_handle( struct object *obj, struct process *process, obj_handle_t handle );
 extern void no_destroy( struct object *obj );
 #ifdef DEBUG_OBJECTS