URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 4446
[ Назад ]

Исходное сообщение
"Проблемы с FROX 0.7.18 b FreeBSD 5.5"

Отправлено pisez , 24-Окт-06 23:39 
Не как не удаётся запустить это чудо с антивирусами .
После проверки не передаёт поток проверенный файл ... В исходниках быстро разобраться unreal
пробовал разные варианты - ни в какую

Содержание

Сообщения в этом обсуждении
"Проблемы с FROX 0.7.18 b FreeBSD 5.5"
Отправлено pisez , 25-Окт-06 17:21 
Разобрался .. если кому надо выкладываю патч

--- ./sstr_io.c Fri Feb  4 10:24:55 2005
+++ ./sstr_io.c Wed Oct 25 13:08:31 2006
@@ -26,6 +26,8 @@
#include <sys/ioctl.h>
#include <unistd.h>
#include <ctype.h>
+#include <sys/types.h>
+#include <sys/stat.h>

#include "sstr.h"
#include "sstr_private.h"
@@ -61,8 +63,15 @@
int sstr_append_read(int fd, sstr * p, int cnt)
{
        int i;
+       struct stat mystat;
+
        if(ioctl(fd, FIONREAD, &i) == -1)
-               return (-1);
+       {
+               fstat(fd,&mystat);
+               if (mystat.st_mode & S_IFREG == 0)
+                 return (-1);
+               i=mystat.st_blksize;
+       };
        if(i == 0)
                return (0);

@@ -73,11 +82,11 @@

        i = min(i, p->maxlen - p->len);
        if(i == 0)
-               return (-1);    /*Buffer full */
+               return (-2);    /*Buffer full */

        i = read(fd, p->buf + p->len, i);
        if(i == -1)
-               return (-1);
+               return (-3);
        p->len += i;
        return (i);
}