Improve recently seen address cache
[tinc] / src / tincctl.h
index 4a917af..ee5f056 100644 (file)
@@ -1,6 +1,9 @@
+#ifndef TINC_TINCCTL_H
+#define TINC_TINCCTL_H
+
 /*
     tincctl.h -- header for tincctl.c.
-    Copyright (C) 2011-2013 Guus Sliepen <guus@tinc-vpn.org>
+    Copyright (C) 2011-2022 Guus Sliepen <guus@tinc-vpn.org>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -17,8 +20,8 @@
     51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
 
-#ifndef __TINC_TINCCTL_H__
-#define __TINC_TINCCTL_H__
+#include "system.h"
+#include "ecdsa.h"
 
 extern bool tty;
 extern bool force;
@@ -41,15 +44,22 @@ typedef struct {
        int type;
 } var_t;
 
+typedef enum {
+       DIR_CACHE       = 1 << 0,
+       DIR_CONFBASE    = 1 << 1,
+       DIR_CONFDIR     = 1 << 2,
+       DIR_HOSTS       = 1 << 3,
+       DIR_INVITATIONS = 1 << 4,
+} tincd_dir_t;
+
 extern const var_t variables[];
 
-extern int rstrip(char *value);
-extern char *get_my_name(bool verbose);
+extern size_t rstrip(char *value);
+extern char *get_my_name(bool verbose) ATTR_MALLOC;
 extern bool connect_tincd(bool verbose);
-extern bool sendline(int fd, char *format, ...);
+extern bool sendline(int fd, const char *format, ...) ATTR_FORMAT(printf, 2, 3);
 extern bool recvline(int fd, char *line, size_t len);
-extern int check_port(char *name);
-extern FILE *fopenmask(const char *filename, const char *mode, mode_t perms);
+extern int check_port(const char *name);
+extern bool makedirs(tincd_dir_t dirs);
 
 #endif
-