]> err.no Git - dpkg/commitdiff
Switch all size parameters to ssize_t. Also, return totalread, not
authorAdam Heath <doogie@debian.org>
Thu, 21 Dec 2000 07:43:22 +0000 (07:43 +0000)
committerAdam Heath <doogie@debian.org>
Thu, 21 Dec 2000 07:43:22 +0000 (07:43 +0000)
bytesread, in buffer_copy.

ChangeLog
include/dpkg.h.in
lib/mlib.c
po/dpkg.pot

index 693e359b128fc681417b0d252c4603cafaa58a58..e268652416fec49afed7a393d1a685198374720d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Thu Dec 21 01:40:02 CST 2000 Adam Heath <doogie@debian.org>
+
+  * lib/mlib.c, include/dpkg.h.in: Switch all size parameters to
+    ssize_t.  Also, return totalread, not bytesread, in buffer_copy.
+
 Thu Dec 21 01:22:22 CST 2000 Adam Heath <doogie@debian.org>
 
   * lib/mlib.c: Handle EINTR on reading and writting in buffer_copy.
index 7c9a06982c8da40b14cf99746a7b1c30625b98ee..4d929922597a2c29c87e4a862cad73e028cce797 100644 (file)
@@ -206,7 +206,7 @@ void waitsubproc(pid_t pid, const char *description, int sigpipeok);
 #define BUFFER_READ_STREAM 1
 
 typedef struct buffer_data *buffer_data_t;
-typedef long (*buffer_proc_t)(buffer_data_t data, void *buf, long size, char *desc);
+typedef ssize_t (*buffer_proc_t)(buffer_data_t data, void *buf, ssize_t size, char *desc);
 struct buffer_data {
   buffer_proc_t proc;
   void *data;
@@ -243,10 +243,10 @@ struct buffer_data {
        buffer_copy_setup((void *)file, BUFFER_READ_STREAM, NULL, \
                          (void *)fd, BUFFER_WRITE_FD, NULL, \
                          limit, desc)
-long buffer_copy_setup(void *argIn, int typeIn, void *procIn,
+ssize_t buffer_copy_setup(void *argIn, int typeIn, void *procIn,
                       void *argOut, int typeOut, void *procOut,
-                      long limit, char *desc, ...);
-long buffer_copy(buffer_data_t read_data, buffer_data_t write_data, long limit, char *desc);
+                      ssize_t limit, char *desc, ...);
+ssize_t buffer_copy(buffer_data_t read_data, buffer_data_t write_data, ssize_t limit, char *desc);
 
 extern volatile int onerr_abort;
 
index 00886cf14a5a35e72f0841b052a3e4c4ee146b86..44b4faea287b57ec9c73df804f446cba24ed3409 100644 (file)
@@ -124,8 +124,8 @@ void waitsubproc(pid_t pid, const char *description, int sigpipeok) {
   checksubprocerr(status,description,sigpipeok);
 }
 
-long buffer_write(buffer_data_t data, void *buf, long length, char *desc) {
-  long ret= length;
+ssize_t buffer_write(buffer_data_t data, void *buf, ssize_t length, char *desc) {
+  ssize_t ret= length;
   switch(data->type) {
     case BUFFER_WRITE_BUF:
       memcpy(data->data, buf, length);
@@ -153,8 +153,8 @@ long buffer_write(buffer_data_t data, void *buf, long length, char *desc) {
    return ret;
 }
 
-long buffer_read(buffer_data_t data, void *buf, long length, char *desc) {
-  long ret= length;
+ssize_t buffer_read(buffer_data_t data, void *buf, ssize_t length, char *desc) {
+  ssize_t ret= length;
   switch(data->type) {
     case BUFFER_READ_FD:
       if((ret= read((int)data->data, buf, length)) < 0 && errno != EINTR)
@@ -173,15 +173,15 @@ long buffer_read(buffer_data_t data, void *buf, long length, char *desc) {
    return ret;
 }
 
-long buffer_copy_setup(void *argIn, int typeIn, void *procIn,
+ssize_t buffer_copy_setup(void *argIn, int typeIn, void *procIn,
                       void *argOut, int typeOut, void *procOut,
-                      long limit, char *desc, ...)
+                      ssize_t limit, char *desc, ...)
 {
   struct buffer_data read_data = { procIn, argIn, typeIn },
                     write_data = { procOut, argOut, typeOut };
   va_list al;
   struct varbuf v;
-  int ret;
+  ssize_t ret;
 
   varbufinit(&v);
 
@@ -199,12 +199,11 @@ long buffer_copy_setup(void *argIn, int typeIn, void *procIn,
 }
 
 
-long buffer_copy(buffer_data_t read_data, buffer_data_t write_data, long limit, char *desc) {
+ssize_t buffer_copy(buffer_data_t read_data, buffer_data_t write_data, ssize_t limit, char *desc) {
   char *buf, *writebuf;
   long bytesread= 0, byteswritten= 0;
   int bufsize= 32768;
-  long totalread= 0;
-  long totalwritten= 0;
+  ssize_t totalread= 0, totalwritten= 0;
   if((limit != -1) && (limit < bufsize)) bufsize= limit;
   writebuf= buf= malloc(bufsize);
   if(buf== NULL) ohshite(_("failed to allocate buffer in buffer_copy (%s)"), desc);
@@ -241,5 +240,5 @@ long buffer_copy(buffer_data_t read_data, buffer_data_t write_data, long limit,
   if (bytesread<0 || byteswritten<0) ohshite(_("failed in buffer_copy (%s)"), desc);
 
   free(buf);
-  return bytesread;
+  return totalread;
 }
index c4c1baf1a1137ced7333e07154a8a36858057a76..3b727fa52e9634fc9314e32f9a410bbbfd3e41e1 100644 (file)
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2000-12-21 01:21-0600\n"
+"POT-Creation-Date: 2000-12-21 01:36-0600\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -492,12 +492,12 @@ msgstr ""
 msgid "unknown data type `%i' in buffer_read\n"
 msgstr ""
 
-#: lib/mlib.c:210
+#: lib/mlib.c:209
 #, c-format
 msgid "failed to allocate buffer in buffer_copy (%s)"
 msgstr ""
 
-#: lib/mlib.c:241
+#: lib/mlib.c:240
 #, c-format
 msgid "failed in buffer_copy (%s)"
 msgstr ""