summaryrefslogtreecommitdiffstats
path: root/c/src/exec
diff options
context:
space:
mode:
authorJennifer Averett <Jennifer.Averett@OARcorp.com>1999-11-18 19:50:15 +0000
committerJennifer Averett <Jennifer.Averett@OARcorp.com>1999-11-18 19:50:15 +0000
commit105d787200ff6962264a34eaa2801deb95539a86 (patch)
treee97932067948acd0c4e79d53a583b0991231439c /c/src/exec
parent+ Debuged to the point that you could open, unlink and close a semaphore. (diff)
downloadrtems-105d787200ff6962264a34eaa2801deb95539a86.tar.bz2
Added routine to remove an object from the namespace. It just clears
its name in the name_table. This was required by the POSIX semaphore and message queue managers which support a concept of open, close, and unlink. The object becomes "invisible" to further opens following an unlink but all open sessions remain active until they are closed. This requires that the removal of an object ID be separate from the removal of its name.
Diffstat (limited to 'c/src/exec')
-rw-r--r--c/src/exec/score/inline/rtems/score/object.inl17
1 files changed, 17 insertions, 0 deletions
diff --git a/c/src/exec/score/inline/rtems/score/object.inl b/c/src/exec/score/inline/rtems/score/object.inl
index b4de63034c..1b435b4d4f 100644
--- a/c/src/exec/score/inline/rtems/score/object.inl
+++ b/c/src/exec/score/inline/rtems/score/object.inl
@@ -269,5 +269,22 @@ RTEMS_INLINE_ROUTINE void _Objects_Close(
_Objects_Clear_name( the_object->name, information->name_length );
}
+/*PAGE
+ *
+ * _Objects_Namespace_remove
+ *
+ * DESCRIPTION:
+ *
+ * This function removes the_object from the namespace.
+ */
+
+RTEMS_INLINE_ROUTINE void _Objects_Namespace_remove(
+ Objects_Information *information,
+ Objects_Control *the_object
+)
+{
+ _Objects_Clear_name( the_object->name, information->name_length );
+}
+
#endif
/* end of include file */