]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - msg.h
mdadm: check value returned by snprintf against errors
[thirdparty/mdadm.git] / msg.h
diff --git a/msg.h b/msg.h
index 84ee9b3a88531a1d36f2f412909d4569d4679700..016612cd1ab7d33937924b6840887f04e6e79eaf 100644 (file)
--- a/msg.h
+++ b/msg.h
@@ -1,7 +1,7 @@
 /*
  * Copyright (C) 2008 Intel Corporation
  *
- *     mdmon socket / message handling
+ *     mdmon socket / message handling
  *
  * This program is free software; you can redistribute it and/or modify it
  * under the terms and conditions of the GNU General Public License,
  */
 
 struct mdinfo;
-struct md_message {
-       int seq;
-       int num_bytes;
-       void *buf;
-};
+struct metadata_update;
 
-enum md_message_action {
-       md_action_ping_monitor,
-       md_action_remove_device,
-};
-
-struct md_generic_cmd {
-       enum md_message_action action;
-};
-
-struct md_remove_device_cmd {
-       enum md_message_action action;
-       dev_t rdev;
-};
-
-/* union of all known command types, used to sanity check ->num_bytes
- * on the receive path
- */
-union md_message_commands {
-       struct md_generic_cmd generic;
-       struct md_remove_device_cmd remove;
-};
-
-extern const int start_magic;
-extern const int end_magic;
-
-extern int receive_message(int fd, struct md_message *msg, int tmo);
-extern int send_message(int fd, struct md_message *msg, int tmo);
-extern int ack(int fd, int seq, int tmo);
-extern int nack(int fd, int err, int tmo);
+extern int receive_message(int fd, struct metadata_update *msg, int tmo);
+extern int send_message(int fd, struct metadata_update *msg, int tmo);
+extern int ack(int fd, int tmo);
+extern int wait_reply(int fd, int tmo);
 extern int connect_monitor(char *devname);
 extern int ping_monitor(char *devname);
-extern int send_remove_device(int fd, dev_t rdev, int seq, int tmo);
-
+extern int block_subarray(struct mdinfo *sra);
+extern int unblock_subarray(struct mdinfo *sra, const int unfreeze);
+extern int block_monitor(char *container, const int freeze);
+extern void unblock_monitor(char *container, const int unfreeze);
+extern int fping_monitor(int sock);
+extern int ping_manager(char *devname);
+extern void flush_mdmon(char *container);
+
+#define MSG_MAX_LEN (4*1024*1024)