Socket: Add oobReadable() and waitOOBReadable() FileHandle members
[senf.git] / Socket / FileHandle.cci
index 79308ae..5cbfce4 100644 (file)
@@ -93,9 +93,34 @@ prefix_ void senf::FileBody::waitWriteable()
     pollCheck(fd(),false,true);
 }
 
+prefix_ bool senf::FileBody::oobReadable()
+    const
+{
+    return pollCheck(fd(),true,false,true);
+}
+
+prefix_ void senf::FileBody::waitOOBReadable()
+    const
+{
+    pollCheck(fd(),true,true,true);
+}
+
 ///////////////////////////////////////////////////////////////////////////
 // senf::FileHandle
 
+prefix_ senf::FileBody & senf::FileHandle::body()
+{
+    SENF_ASSERT(body_);
+    return *body_;
+}
+
+prefix_ senf::FileBody const & senf::FileHandle::body()
+    const
+{
+    SENF_ASSERT(body_);
+    return *body_;
+}
+
 prefix_ void senf::FileHandle::close()
 {
     body().close();
@@ -130,6 +155,18 @@ prefix_ void senf::FileHandle::waitWriteable()
     body().waitWriteable();
 }
 
+prefix_ bool senf::FileHandle::oobReadable()
+    const
+{
+    return body().oobReadable();
+}
+
+prefix_ void senf::FileHandle::waitOOBReadable()
+    const
+{
+    body().waitOOBReadable();
+}
+
 prefix_ bool senf::FileHandle::blocking()
     const
 {
@@ -183,19 +220,6 @@ prefix_ senf::FileHandle::FileHandle(FileBody::ptr body)
     : body_(body)
 {}
 
-prefix_ senf::FileBody & senf::FileHandle::body()
-{
-    SENF_ASSERT(body_);
-    return *body_;
-}
-
-prefix_ senf::FileBody const & senf::FileHandle::body()
-    const
-{
-    SENF_ASSERT(body_);
-    return *body_;
-}
-
 prefix_ senf::FileBody & senf::FileHandle::body(FileHandle & handle)
 {
     return handle.body();