Code

Moved sdb_proto_send/sdb_proto_select to sdb_write/sdb_select.
[sysdb.git] / src / include / utils / proto.h
index f3f1a871d83e48c28e96bee92fd8a40ac4e3188a..e76211965a416d4e06d6fa93bdfbcc3e1d32b2e9 100644 (file)
 extern "C" {
 #endif
 
-enum {
-       SDB_PROTO_SELECTIN = 0,
-       SDB_PROTO_SELECTOUT,
-       SDB_PROTO_SELECTERR,
-};
-
 /*
- * sdb_proto_select:
- * Wait for a file-descriptor to become ready for I/O operations of the
- * specified type. This is a simple wrapper around the select() system call.
- * The type argument may be any of the SDB_PROTO_SELECT* constants.
+ * sdb_proto_marshal:
+ * Encode the message into the wire format by adding an appropriate header.
+ * The encoded message is written to buf which has to be large enough to store
+ * the header (64 bits) and the entire message.
  *
  * Returns:
- *  - the number of file descriptors ready for I/O
+ *  - the number of bytes of the full encoded message on success (even if less
+ *    than that fit into and was written to the buffer)
  *  - a negative value on error
  */
-int
-sdb_proto_select(int fd, int type);
-
-ssize_t
-sdb_proto_send(int fd, size_t msg_len, const char *msg);
-
 ssize_t
-sdb_proto_send_msg(int fd, uint32_t code,
+sdb_proto_marshal(char *buf, size_t buf_len, uint32_t code,
                uint32_t msg_len, const char *msg);
 
 uint32_t