]> the.earth.li Git - onak.git/blobdiff - keydctl.c
Add ability to drop overly large packets
[onak.git] / keydctl.c
index 4ffecae2943a3fa2bcb51ba08a4889aa0c8208dc..a2b312ca985d9f274f4858ebccba6dc239e8b96c 100644 (file)
--- a/keydctl.c
+++ b/keydctl.c
@@ -13,8 +13,7 @@
  * more details.
  *
  * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 #include <errno.h>
@@ -32,7 +31,7 @@
 #include "version.h"
 
 /* HACK: We need to stop onak-conf.o requiring this. */
-void *DBFUNCS = NULL;
+void *DBINIT = NULL;
 
 static int keyd_fd = -1;
 static int verbose = 0;
@@ -99,7 +98,7 @@ static void keyd_connect(void)
 
        sock.sun_family = AF_UNIX;
        snprintf(sock.sun_path, sizeof(sock.sun_path) - 1, "%s/%s",
-                       config.db_dir,
+                       config.sock_dir,
                        KEYD_SOCKET);
        if (connect(keyd_fd, (struct sockaddr *) &sock, sizeof(sock)) < 0) {
                if (verbose >= 0) {
@@ -154,10 +153,17 @@ static void keyd_status(void)
        uint32_t reply;
        struct keyd_stats stats;
 
-       keyd_do_command(KEYD_CMD_VERSION, &reply, sizeof(reply));
+       if (keyd_do_command(KEYD_CMD_VERSION, &reply, sizeof(reply)) == -1) {
+               printf("Got failure asking for keyd version.\n");
+               return;
+       }
        printf("Using keyd protocol version %d.\n", reply);
 
-       keyd_do_command(KEYD_CMD_STATS, &stats, sizeof(stats));
+       if (keyd_do_command(KEYD_CMD_STATS, &stats, sizeof(stats)) == -1) {
+               printf("Got failure asking for keyd statistics.\n");
+               return;
+       }
+
        printf("keyd running since %s", ctime(&stats.started));
        printf("%d client connections received\n", stats.connects);
 
@@ -168,10 +174,14 @@ static void keyd_status(void)
                stats.command_stats[KEYD_CMD_GET_ID]);
        printf("  Get key by FP:    %d\n",
                stats.command_stats[KEYD_CMD_GET_FP]);
+       printf("  Get key by hash:  %d\n",
+               stats.command_stats[KEYD_CMD_GET_SKSHASH]);
        printf("  Store key:        %d\n",
                stats.command_stats[KEYD_CMD_STORE]);
        printf("  Delete key:       %d\n",
                stats.command_stats[KEYD_CMD_DELETE]);
+       printf("  Update key:       %d\n",
+               stats.command_stats[KEYD_CMD_UPDATE]);
        printf("  Search key:       %d\n",
                stats.command_stats[KEYD_CMD_GET_TEXT]);
        printf("  Get full keyid:   %d\n",