Procházet zdrojové kódy

* strncat() was cutting off 1 char short, had to account for this in new strlcat() calls

svn: 1727
Bryan Drewery před 21 roky
rodič
revize
919cc86701
2 změnil soubory, kde provedl 4 přidání a 4 odebrání
  1. 2 2
      src/chanprog.c
  2. 2 2
      src/crypt.c

+ 2 - 2
src/chanprog.c

@@ -485,8 +485,8 @@ void load_internal_users()
       case 2:
 	hosts = ln;
 	if (owner[0])
-	  strlcat(owner, ",", 120);
-	strlcat(owner, hand, 120);
+	  strlcat(owner, ",", 121);
+	strlcat(owner, hand, 121);
 	if (!get_user_by_handle(userlist, hand)) {
 	  userlist = adduser(userlist, hand, "none", "-", USER_ADMIN | USER_OWNER | USER_MASTER | USER_OP | USER_PARTY | USER_HUBA | USER_CHUBA, 0);
 	  u = get_user_by_handle(userlist, hand);

+ 2 - 2
src/crypt.c

@@ -122,7 +122,7 @@ void encrypt_pass(char *s1, char *s2)
     s1[MAXPASSLEN] = 0;
   tmp = encrypt_string(s1, s1);
   strcpy(s2, "+");
-  strlcat(s2, tmp, MAXPASSLEN);
+  strlcat(s2, tmp, MAXPASSLEN + 1);
   s2[MAXPASSLEN] = 0;
   free(tmp);
 }
@@ -153,7 +153,7 @@ void encrypt_pass_new(char *s1, char *s2)
     s1[MAXPASSLEN] = 0;
   tmp = encrypt_string(s1, passkey);
   strcpy(s2, "+");
-  strlcat(s2, tmp, MAXPASSLEN);
+  strlcat(s2, tmp, MAXPASSLEN + 1);
   s2[MAXPASSLEN] = 0;
   free(tmp);
 }