<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>34085</bug_id>
          
          <creation_ts>2017-10-28 18:41:23 +0300</creation_ts>
          <short_desc>clamscan не видит файлов и каталогов, имеющих inode &gt;2^32</short_desc>
          <delta_ts>2019-07-31 04:21:49 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>clamav</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vitaly Lipatov">lav</reporter>
          <assigned_to name="Sergey Y. Afonin">asy</assigned_to>
          <cc>asy</cc>
    
    <cc>evg</cc>
    
    <cc>omarandemad</cc>
    
    <cc>taf</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>166696</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2017-10-28 18:41:23 +0300</bug_when>
    <thetext>На система ALT p8 32 бит имеется задача сканировать рекурсивно каталог /var/ftp/pvt/Windows на наличие вирусов с помощью clamscan:

# clamscan --include &quot;exe&quot; -r -i /var/ftp/pvt/Windows

Проблема в том, что clamscan выдает:

----------- SCAN SUMMARY -----------
Known viruses: 2903579
Engine version: 0.98-exp
Scanned directories: 1
Scanned files: 0
Infected files: 0
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 30.321 sec (0 m 30 s)

Но на самом деле каталог отнюдь не пуст и содержит много вложенных каталогов с файлами, требующих проверки.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166704</commentid>
    <comment_count>1</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2017-10-28 21:06:21 +0300</bug_when>
    <thetext>Ошибка, выявленная strace:
openat(AT_FDCWD, &quot;/var/ftp/pvt/Windows&quot;, O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 4
getdents(4, 0x8fcce68, 32768)           = -1 EOVERFLOW (Value too large for defined data type)

Нужно попросить clamscan использовать getdents64 путём сборки с  -D_FILE_OFFSET_BITS=64

точнее, добавить AC_SYS_LARGEFILE в configure.ac
https://bugzilla.altlinux.org/show_bug.cgi?id=28214#c4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166739</commentid>
    <comment_count>2</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2017-10-29 18:58:17 +0300</bug_when>
    <thetext>(In reply to comment #1)

&gt; Нужно попросить clamscan использовать getdents64 путём сборки с 
&gt; -D_FILE_OFFSET_BITS=64
&gt; 
&gt; точнее, добавить AC_SYS_LARGEFILE в configure.ac
&gt; https://bugzilla.altlinux.org/show_bug.cgi?id=28214#c4

В http://git.altlinux.org/tasks/192637/build/100/i586/log сейчас есть такое:

checking for _FILE_OFFSET_BITS value needed for large files... 64

Но проверить мне негде. В p8 из этого задания, вроде как, ставится.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166740</commentid>
    <comment_count>3</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2017-10-29 19:39:17 +0300</bug_when>
    <thetext>(В ответ на комментарий №2)
&gt; (In reply to comment #1)
&gt; 
&gt; &gt; Нужно попросить clamscan использовать getdents64 путём сборки с 
&gt; &gt; -D_FILE_OFFSET_BITS=64
&gt; &gt; 
&gt; &gt; точнее, добавить AC_SYS_LARGEFILE в configure.ac
&gt; &gt; https://bugzilla.altlinux.org/show_bug.cgi?id=28214#c4
&gt; 
&gt; В http://git.altlinux.org/tasks/192637/build/100/i586/log сейчас есть такое:
&gt; 
&gt; checking for _FILE_OFFSET_BITS value needed for large files... 64
&gt; 
&gt; Но проверить мне негде. В p8 из этого задания, вроде как, ставится.
Это не проблема. 
Я проверил, заработало. Спасибо! Жду в Сизифе и сможете в p8?

...
----------- SCAN SUMMARY -----------
Known viruses: 6326557
Engine version: 0.99.2
Scanned directories: 1
Scanned files: 6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166741</commentid>
    <comment_count>4</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2017-10-29 19:48:48 +0300</bug_when>
    <thetext>clamav-0.99.2-alt4 -&gt; sisyphus:

Sun Oct 29 2017 Sergey Y. Afonin &lt;asy@altlinux.ru&gt; 0.99.2-alt4
- used AC_SYS_LARGEFILE (ALT #34085)
- removed &quot;Packager&quot; field
- corrected &quot;License&quot; field</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>