loadtest.c: after creating accounts and rooms, log back in using a non privileged...
authorArt Cancro <ajc@citadel.org>
Tue, 29 Aug 2023 15:50:22 +0000 (11:50 -0400)
committerArt Cancro <ajc@citadel.org>
Tue, 29 Aug 2023 15:50:22 +0000 (11:50 -0400)
citadel/utils/loadtest.c

index 004d86ee55cf46d73ff871088da78bdf44cf0131..5cd8253dbd917560c03a1bee6c92f694a052b72e 100644 (file)
@@ -276,6 +276,31 @@ void perform_random_thing(int serv_sock) {
 
 
 void do_stuff(int serv_sock) {
+       char buf[SIZ];
+
+       snprintf(buf, sizeof buf, "USER %s", test_user);
+       serv_puts(serv_sock, buf);
+       serv_gets(serv_sock, buf);
+       snprintf(buf, sizeof buf, "PASS 640k_enough_ne1");
+       serv_puts(serv_sock, buf);
+       serv_gets(serv_sock, buf);
+       snprintf(buf, sizeof(buf), "GOTO %s", random_rooms[0]);
+       serv_puts(serv_sock, buf);
+       serv_gets(serv_sock, buf);
+
+       printf("\033[%d;0H\033[32m%6ld\033[0m", 7+serv_sock, serv_sock-3);
+
+       long ops = 0;
+       while(1) {
+               alarm(30);
+               perform_random_thing(serv_sock);
+               printf("\033[%d;11H\033[33m%8ld\033[0m", 7+serv_sock, ++ops);
+               fflush(stdout);
+       }
+}
+
+
+void setup_accounts(int serv_sock) {
        int i;
        char buf[SIZ];
 
@@ -298,19 +323,6 @@ void do_stuff(int serv_sock) {
                serv_gets(serv_sock, buf);
        }
 
-       snprintf(buf, sizeof(buf), "GOTO %s", random_rooms[0]);
-       serv_puts(serv_sock, buf);
-       serv_gets(serv_sock, buf);
-
-       printf("\033[%d;0H\033[32m%6ld\033[0m", 7+serv_sock, serv_sock-3);
-
-       long ops = 0;
-       while(1) {
-               alarm(30);
-               perform_random_thing(serv_sock);
-               printf("\033[%d;11H\033[33m%8ld\033[0m", 7+serv_sock, ++ops);
-               fflush(stdout);
-       }
 }
 
 void *loadtest(void *blah) {
@@ -319,9 +331,12 @@ void *loadtest(void *blah) {
 
        serv_sock = uds_connectsock(file_citadel_admin_socket);
        serv_gets(serv_sock, buf);
+       setup_accounts(serv_sock);
+       close(serv_sock);
 
+       serv_sock = uds_connectsock(file_citadel_socket);
+       serv_gets(serv_sock, buf);
        do_stuff(serv_sock);
-
        close(serv_sock);
 }