-/*
- * Update mechanism description structure.
- */
-struct update_desc {
- int last_time; /* when did we try last? */
- int success; /* did it succeed? */
- int interval; /* interval in minutes between updates */
- char *service_name;
- char *host_name;
- char *target_path; /* where to put the file */
- int override; /* override interval */
- int enable; /* can we update at all? */
- char *instructions; /* script pathname */
- char *value1, *value2; /* these come from the database */
- int dfgen;
-};
-
-char *whoami;
-extern char sms_data_dir[];
-
#define log_DEBUG 0
#define log_INFO 1
#define log_WARNING 2
#define log_ERROR 3
+
+#define SERVICE_NAME "moira_update"
+/* For unknown reasons, we're running des_pcbc_encrypt in DEcrypt mode,
+ not ENcrypt, so we need to guarantee that the block size is a multiple
+ of 8 to prevent the data from being zero-padded. */
+#define MR_BUFSIZ 8192
+#define UPDATE_BUFSIZ ((MR_BUFSIZ + 7) & ~7)
+
+int mr_send_file(int conn, char *pathname, char *target_path, int encrypt);
+int mr_send_auth(int conn, char *hostname);
+int mr_execute(int conn, char *path);
+void mr_send_quit(int conn);
+
+extern char *whoami;