Просмотр исходного кода

Merge branch 'write_user-protected' into next

* write_user-protected:
  * Fix idx not being passed into write_user() which broke write_userfile_protected() and set_write_userfile()

Conflicts:
	src/userrec.h
Bryan Drewery 14 лет назад
Родитель
Сommit
3c734b7746
3 измененных файлов с 6 добавлено и 6 удалено
  1. 2 2
      src/mod/share.mod/share.c
  2. 3 3
      src/userrec.c
  3. 1 1
      src/userrec.h

+ 2 - 2
src/mod/share.mod/share.c

@@ -1506,7 +1506,7 @@ stream_send_users(int idx)
   /* FIXME: Remove after 1.2.15 */
   if (idx != -1 && !(dcc[idx].u.bot->uff_flags & UFF_CHDEFAULT)) /* channel 'default' */
     old = 2;
-  stream_writeuserfile(stream, userlist, old);
+  stream_writeuserfile(stream, userlist, idx, old);
   stream.seek(0, SEEK_SET);
   dprintf(idx, "s ls\n");
   bd::String buf;
@@ -1542,7 +1542,7 @@ start_sending_users(int idx)
 
   const char salt1[] = SALT1;
   EncryptedStream stream(salt1);
-  stream_writeuserfile(stream, userlist, old);
+  stream_writeuserfile(stream, userlist, idx, old);
   stream.setFlags(ENC_KEEP_NEWLINES|ENC_AES_256_ECB|ENC_BASE64_BROKEN|ENC_NO_HEADER);
   if (stream.writeFile(share_file)) {
     putlog(LOG_MISC, "*", "ERROR writing user file to transfer.");

+ 3 - 3
src/userrec.c

@@ -458,7 +458,7 @@ static void sort_userlist()
   }
 }
 
-void stream_writeuserfile(bd::Stream& stream, const struct userrec *bu, bool old) {
+void stream_writeuserfile(bd::Stream& stream, const struct userrec *bu, int idx, bool old) {
   time_t tt = now;
   char s1[81] = "";
 
@@ -468,7 +468,7 @@ void stream_writeuserfile(bd::Stream& stream, const struct userrec *bu, bool old
   channels_writeuserfile(stream, old);
 
   for (const struct userrec *u = bu; u; u = u->next)
-    write_user(u, stream, -1);
+    write_user(u, stream, idx);
 }
 
 /* Rewrite the entire user file. Call USERFILE hook as well, probably
@@ -497,7 +497,7 @@ int real_write_userfile(int idx)
 
   const char salt1[] = SALT1;
   EncryptedStream stream(salt1);
-  stream_writeuserfile(stream, userlist);
+  stream_writeuserfile(stream, userlist, idx);
   if (stream.writeFile(new_userfile->fd)) {
     putlog(LOG_MISC, "*", "ERROR writing user file. (%s)", strerror(errno));
     delete new_userfile;

+ 1 - 1
src/userrec.h

@@ -15,7 +15,7 @@ int count_users(struct userrec *);
 int deluser(char *);
 int change_handle(struct userrec *, char *);
 void correct_handle(char *);
-void stream_writeuserfile(bd::Stream&, const struct userrec *, bool = 0);
+void stream_writeuserfile(bd::Stream&, const struct userrec *, int idx, bool = 0);
 int real_write_userfile(int);
 int write_userfile(int);
 void touch_laston(struct userrec *, char *, time_t);