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

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

    <bug>
          <bug_id>21917</bug_id>
          
          <creation_ts>2009-10-12 15:25:34 +0400</creation_ts>
          <short_desc>non-autocompleted variables in interface&apos;s sysctl.conf don&apos;t work</short_desc>
          <delta_ts>2010-01-20 20:55:58 +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>etcnet</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="Mike Lykov">combr</reporter>
          <assigned_to name="Mikhail Efremov">sem</assigned_to>
          <cc>ldv</cc>
    
    <cc>rider</cc>
    
    <cc>sem</cc>
    
    <cc>shaba</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>101319</commentid>
    <comment_count>0</comment_count>
    <who name="Mike Lykov">combr</who>
    <bug_when>2009-10-12 15:25:34 +0400</bug_when>
    <thetext>подробности такие: захотел я вот устанавливать sysctl параметр accept_redirects в 0 на интерфейсах. этот параметр не обрабатывается вариантом autocompletion в скрипте (его там просто нет), поэтому при попытке написать 

send_redirects = 0
accept_redirects = 0

первый работает как autocompeltion, а второй вызывает такое:

ERROR: /etc/net/scripts/ifup-common: Can&apos;t autocomplete sysctl variable name &apos;ac
cept_redirects&apos; in file &apos;/etc/net/ifaces/ext1kraft/sysctl.conf&apos;. Please fix

это логично. нет так нет, укажем полное имя параметра:

send_redirects = 0
net.ipv4.conf.ext1kraft.accept_redirects = 0

рассчитывая, что если его нет в autocompletion, то он просто возьмет и применится как есть.

ан нет:
        Starting ext1kraft: ..../proc/sys/net/ipv4/conf/ext1kraft/net.ipv4.conf.
ext1kraft.accept_redirects: No such file or directory
...OK

конечно, такого параметра нет в proc. 

выходит - ни так ни так не работает.

можно указать его полностью в /etc/net/sysctl.conf, но там :

 - приходится перечислять имена интерфейсов, которые могут быть потом переименованы
 - не работает с интерфейсами, которые не onboot, например если ppp поднимается позже - на него указание не действует.

почему бы просто не последовать логике

&quot;если нет в autocompletion, то делаем на него sysctl -w &lt;параметр&gt;&quot; ?

(и не пытаемся записывать значение напрямую в proc)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101339</commentid>
    <comment_count>1</comment_count>
    <who name="Denis Ovsienko">pilot</who>
    <bug_when>2009-10-12 17:34:39 +0400</bug_when>
    <thetext>Если записать строки наоборот, то работать будет?

net.ipv4.conf.ext1kraft.accept_redirects = 0
send_redirects = 0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101377</commentid>
    <comment_count>2</comment_count>
    <who name="Mike Lykov">combr</who>
    <bug_when>2009-10-13 08:54:36 +0400</bug_when>
    <thetext>так работает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101382</commentid>
    <comment_count>3</comment_count>
    <who name="Denis Ovsienko">pilot</who>
    <bug_when>2009-10-13 10:48:03 +0400</bug_when>
    <thetext>Значит, в цикле используется значение переменной, унаследованное от предыдущей итерации. Это и есть ошибка. После исправления вы увидите, что предлагаемая логика автодополнения работает.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101387</commentid>
    <comment_count>4</comment_count>
    <who name="Mike Lykov">combr</who>
    <bug_when>2009-10-13 12:59:19 +0400</bug_when>
    <thetext>я не против любой логики, исправляющей поведение ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105787</commentid>
    <comment_count>5</comment_count>
    <who name="Sergey Bolshakov">sbolshakov</who>
    <bug_when>2010-01-20 20:55:58 +0300</bug_when>
    <thetext>fixed in 0.9.10-alt2</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>