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

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

    <bug>
          <bug_id>33300</bug_id>
          
          <creation_ts>2017-03-29 20:55:59 +0300</creation_ts>
          <short_desc>bind перестаёт работать с интерфейсом после ifup/ifdown</short_desc>
          <delta_ts>2025-08-25 16:13:36 +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>bind</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=43042</see_also>
          <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="Anton Farygin">rider</reporter>
          <assigned_to name="placeholder@altlinux.org">placeholder</assigned_to>
          <cc>aen</cc>
    
    <cc>asy</cc>
    
    <cc>evg</cc>
    
    <cc>george</cc>
    
    <cc>glebfm</cc>
    
    <cc>jenya</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
    
    <cc>placeholder</cc>
    
    <cc>rider</cc>
    
    <cc>sbolshakov</cc>
    
    <cc>sem</cc>
    
    <cc>slev</cc>
    
    <cc>vt</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>162817</commentid>
    <comment_count>0</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-03-29 20:55:59 +0300</bug_when>
    <thetext>Имеем:
bind-9.10.4-alt2
пачку vpn туннелей в разные стороны (openvpn).
форвардинг запросов dns через vpn туннели к другим named серверам.

Проблемы:
bind перестаёт отправлять forward запросы на другой сервер, если интерфейс VPN переинициализируется по каким-то причинам (аналог ifdown &amp;&amp; ifup)

после перезапуска bind снова начинает работать нормально.
Явно это из-за сброса capability. 

Меня бы устроила ручка по отключению такого поведения, ну или какое-то исправление, которое позволило бы bind садиться на те интерфейсы, которые появились после его запуска.

Аналогичная проблема с dhcp, но там не vpn а vlan&apos;ы - после ifdown/ifup на интерфейсе приходится перезапускать dhcp сервер.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162830</commentid>
    <comment_count>1</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2017-03-30 11:24:34 +0300</bug_when>
    <thetext>interface-interval не эта ли ручка ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162831</commentid>
    <comment_count>2</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2017-03-30 11:29:30 +0300</bug_when>
    <thetext>Кстати, а почему бы не добавить IP на lo и повесить BIND на этот адрес ? И всё делать с этим src ip.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162832</commentid>
    <comment_count>3</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-03-30 11:39:25 +0300</bug_when>
    <thetext>

interface-interval у нас не работает - bind не биндится на порт с диагностикой permission denied:

Mar 30 11:36:04 xxxxxxx named[20586]: listening on IPv4 interface vpn1, 172.22.0.1#53
Mar 30 11:36:04 xxxxxxx named[20586]: could not listen on UDP socket: permission denied
Mar 30 11:36:04 xxxxxxx named[20586]: creating IPv4 interface vpn1 failed; interface ignored

Можно, наверное, решить это через lo0 и маршруты, но ошибка не о том, какой костыль придумать для того, что бы обойти неработающий в нашей сборке функционал.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163072</commentid>
    <comment_count>4</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-04-07 15:30:22 +0300</bug_when>
    <thetext>PING.
Сегодня опять нарвался, правда на dhcpd, который теряет интерфейс после ifdown/ifup

Мне собирать ещё один bind+libbind в Sisyphus ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163074</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-04-07 15:42:08 +0300</bug_when>
    <thetext>(In reply to comment #4)
&gt; PING.
&gt; Сегодня опять нарвался, правда на dhcpd, который теряет интерфейс после
&gt; ifdown/ifup
&gt; 
&gt; Мне собирать ещё один bind+libbind в Sisyphus ?

А как же ты жил все эти годы?  bind утратил эту возможность, когда стал непривилегированным, с версии 8.2.какой-то.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163079</commentid>
    <comment_count>6</comment_count>
    <who name="Mikhail Efremov">sem</who>
    <bug_when>2017-04-07 16:41:06 +0300</bug_when>
    <thetext>(In reply to comment #5)
&gt;  bind утратил эту возможность, когда стал
&gt; непривилегированным, с версии 8.2.какой-то.

Мне помнится, что когда-то давно по этой причине для Кольчуги делался костыль, перезапускающий bind после ifdown/ifup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163081</commentid>
    <comment_count>7</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2017-04-07 17:41:04 +0300</bug_when>
    <thetext>А мне, на самом деле, непонятен отказ от варианта повесить Bind на дополнительный рабочий адрес на lo. Никакие маршруты не требуются, надо только дописать в ifaces/lo/ipv4address ещё один IP, а-ля 10.1.1.1/32 и раздавать его на клиентские подключения в качестве DNS. default gw ведь на этот же сервер ведёт ? Ну и придёт запрос к этому IP на этот сервер сам собой.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163083</commentid>
    <comment_count>8</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-04-07 20:45:15 +0300</bug_when>
    <thetext>Чаще всего налетаешь на dhcpd.

если с bind ещё можно как-то выкрутиться, то с dhcp всё плохо.
Мне кажется, что dhcp сервер раньше так не работал. Но я могу ошибаться.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163084</commentid>
    <comment_count>9</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-04-07 20:45:54 +0300</bug_when>
    <thetext>(In reply to comment #7)
&gt; А мне, на самом деле, непонятен отказ от варианта повесить Bind на
&gt; дополнительный рабочий адрес на lo. Никакие маршруты не требуются, надо только
&gt; дописать в ifaces/lo/ipv4address ещё один IP, а-ля 10.1.1.1/32 и раздавать его
&gt; на клиентские подключения в качестве DNS. default gw ведь на этот же сервер
&gt; ведёт ? Ну и придёт запрос к этому IP на этот сервер сам собой.

default gw не ведёт на этот сервер. Если б вёл.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163186</commentid>
    <comment_count>10</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-04-13 07:50:37 +0300</bug_when>
    <thetext>(In reply to comment #8)
&gt; Чаще всего налетаешь на dhcpd.
&gt; 
&gt; если с bind ещё можно как-то выкрутиться, то с dhcp всё плохо.
&gt; Мне кажется, что dhcp сервер раньше так не работал. Но я могу ошибаться.

dhcp собирается и работает с библиотеками от bind-9.9.9-P5, упакованными в пакет libisc-export-dhcp-devel.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163187</commentid>
    <comment_count>11</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-04-13 07:54:35 +0300</bug_when>
    <thetext>Открутишь от него сброс привелегий ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163188</commentid>
    <comment_count>12</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-04-13 07:58:45 +0300</bug_when>
    <thetext>(In reply to comment #11)
&gt; Открутишь от него сброс привелегий ?

Я думаю, что тот код в bind нерелевантен для dhcp.
По идее, поведение dhcp не должно было поменяться, потому что бибилиотеки не поменялись.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163189</commentid>
    <comment_count>13</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-04-13 08:03:55 +0300</bug_when>
    <thetext>релевантность кода можно легко проверить.
я допускаю, что помимо обновлений у меня могли поменяться usecase - появились отдельные vlan&apos;ы, которые я стал перезапускать немного чаще обычного.

но в любом случае смысл остаётся тот же - DHCP и bind ведут себя одинаково - теряют интерфейс после его рестарта.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>164598</commentid>
    <comment_count>14</comment_count>
    <who name="Sergey Bolshakov">sbolshakov</who>
    <bug_when>2017-07-07 11:51:22 +0300</bug_when>
    <thetext>потерять же интерфейс можно не только его рестартом -- достаточно
моргнуть линку, и, если сеть под etcnet+ifplugd или systemd-networkd, то всё,
этот bind уже не bind, а так, массогабаритный муляж.
нужно это прекратить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>164599</commentid>
    <comment_count>15</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-07-07 11:53:03 +0300</bug_when>
    <thetext>Дима, можешь добавить опцию, позволяющую отключать подобное поведение у bind ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>164600</commentid>
    <comment_count>16</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-07-07 14:00:02 +0300</bug_when>
    <thetext>(In reply to comment #14)
&gt; потерять же интерфейс можно не только его рестартом -- достаточно
&gt; моргнуть линку, и, если сеть под etcnet+ifplugd или systemd-networkd, то всё,

А зачем они это делают?

&gt; этот bind уже не bind, а так, массогабаритный муляж.

И что, теперь весь сетевой софт должен из-за этого стать привилегированным?

&gt; нужно это прекратить.

не лучше ли это прекратить там, где это появилось, т.е. на стороне софта, выводящего из строя сетевые интерфейсы?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172802</commentid>
    <comment_count>17</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-07-20 12:03:28 +0300</bug_when>
    <thetext>ifdown/ifup интерфейс и named/dhcp перестаёт работать неожиданно для администратора.

Сегодня опять словили.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172803</commentid>
    <comment_count>18</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2018-07-20 12:10:55 +0300</bug_when>
    <thetext>(В ответ на комментарий №14)
&gt; если сеть под etcnet+ifplugd или systemd-networkd
Э-ээ, а зачем так делать на сервере?  Там же работать должно.
ifplugd для ноутов пакетил, даже не для десктопов вообще-то.

PS: как ещё вариант -- воткнуть рестартилку в подъёмные скрипты,
где они там (в ppp это ip-up.d из того, куда недавно заглядывал).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172804</commentid>
    <comment_count>19</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-07-20 12:19:05 +0300</bug_when>
    <thetext>Миша, сейчас существует как минимум три штатных способа настраивать сеть.
Какую рестартилку ?
Надо просто добавить в bind опцию, отключающую такое поведение. Для случаев, когда нужно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172805</commentid>
    <comment_count>20</comment_count>
    <who name="Sergey Bolshakov">sbolshakov</who>
    <bug_when>2018-07-20 12:20:59 +0300</bug_when>
    <thetext>(In reply to comment #18)
&gt; (В ответ на комментарий №14)
&gt; &gt; если сеть под etcnet+ifplugd или systemd-networkd
&gt; Э-ээ, а зачем так делать на сервере?  Там же работать должно.
&gt; ifplugd для ноутов пакетил, даже не для десктопов вообще-то.
&gt; 
&gt; PS: как ещё вариант -- воткнуть рестартилку в подъёмные скрипты,
&gt; где они там (в ppp это ip-up.d из того, куда недавно заглядывал).

Миша, если ты не в курсе, то я поясню: в вашем bind (себе я вынужден пересобирать) некоторые штатные возможности специально оторваны.
Изобретать к такому bind парные костыли мне не хочется.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172806</commentid>
    <comment_count>21</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2018-07-20 12:28:28 +0300</bug_when>
    <thetext>Раньше указание &quot;interface-interval 0;&quot; в options решало это проблему - bind переставал &quot;терять&quot; интерфейс.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172810</commentid>
    <comment_count>22</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-07-20 14:09:05 +0300</bug_when>
    <thetext>Конечно, эта опция не может помочь от рестарта интерфейса

Выглядит это так:

# ss -u -a -p &apos;( sport = 53  )&apos;
State  Recv-Q  Send-Q     Local Address:Port       Peer Address:Port                                                                                          
UNCONN 0       0            192.168.1.1:domain          0.0.0.0:*      users:((&quot;named&quot;,pid=5423,fd=520),(&quot;named&quot;,pid=5423,fd=519),(&quot;named&quot;,pid=5423,fd=518))  
UNCONN 0       0              127.0.0.1:domain          0.0.0.0:*      users:((&quot;named&quot;,pid=5423,fd=517),(&quot;named&quot;,pid=5423,fd=516),(&quot;named&quot;,pid=5423,fd=515))  
UNCONN 0       0                   [::]:domain             [::]:*      users:((&quot;named&quot;,pid=5423,fd=514),(&quot;named&quot;,pid=5423,fd=513),(&quot;named&quot;,pid=5423,fd=512))  

# ifdown lan &amp;&amp; ifup lan

# ss -u -a -p &apos;( sport = 53  )&apos;
State  Recv-Q  Send-Q     Local Address:Port       Peer Address:Port                                                                                          
UNCONN 0       0              127.0.0.1:domain          0.0.0.0:*      users:((&quot;named&quot;,pid=5423,fd=517),(&quot;named&quot;,pid=5423,fd=516),(&quot;named&quot;,pid=5423,fd=515))  
UNCONN 0       0                   [::]:domain             [::]:*      users:((&quot;named&quot;,pid=5423,fd=514),(&quot;named&quot;,pid=5423,fd=513),(&quot;named&quot;,pid=5423,fd=512))  

# /etc/init.d/bind restart
Stopping named service:                                                                                                                               [ DONE ]
Checking named configuration file syntax:                                                                                                             [ DONE ]
Starting named service:                                                                                                                               [ DONE ]

# ss -u -a -p &apos;( sport = 53  )&apos;
State  Recv-Q  Send-Q     Local Address:Port       Peer Address:Port                                                                                          
UNCONN 0       0            192.168.1.1:domain          0.0.0.0:*      users:((&quot;named&quot;,pid=5711,fd=520),(&quot;named&quot;,pid=5711,fd=519),(&quot;named&quot;,pid=5711,fd=518))  
UNCONN 0       0              127.0.0.1:domain          0.0.0.0:*      users:((&quot;named&quot;,pid=5711,fd=517),(&quot;named&quot;,pid=5711,fd=516),(&quot;named&quot;,pid=5711,fd=515))  
UNCONN 0       0                   [::]:domain             [::]:*      users:((&quot;named&quot;,pid=5711,fd=514),(&quot;named&quot;,pid=5711,fd=513),(&quot;named&quot;,pid=5711,fd=512))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175749</commentid>
    <comment_count>23</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-11-13 19:02:28 +0300</bug_when>
    <thetext>Я снова поймал эту ошибку неприятным образом (перестаёт работать DNS сам по себе после отваливанивания vpn интерфейса, на котором висит bind).
Ты планируешь её как-то исправить?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184853</commentid>
    <comment_count>24</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2019-10-10 09:51:06 +0300</bug_when>
    <thetext>И я опять словил эту же проблему но уже на p9.

Предлагаю ещё раз посмотреть на код, который реализует такое поведение.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184854</commentid>
    <comment_count>25</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2019-10-10 10:51:19 +0300</bug_when>
    <thetext>(In reply to comment #16)

&gt; &gt; нужно это прекратить.
&gt; 
&gt; не лучше ли это прекратить там, где это появилось, т.е. на стороне софта,
&gt; выводящего из строя сетевые интерфейсы?

Тут есть такой момент, что с упавшего интерфейса могут убираться разные штуки, например статические маршруты через него. И это ожидаемое поведение для тех, кто привых к железным маршрутизаторам. То есть, при пропадании линка интерфейс должен как-то среагировать, и это нормально. Но должно ли так себя прикладное ПО вести - вопрос открытый...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184859</commentid>
    <comment_count>26</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2019-10-10 11:40:56 +0300</bug_when>
    <thetext>Ну смотри, если пофилосовствовать, то например - у нас есть какая-то прикладная программа, которая использует к примеру СУБД. Она присоединилась к этой СУБД и эксплуатирует данное соединение всегда для своей работы. Перезапуск СУБД ведёт к разрыву этого соединения. Прикладная программа должна корректно отрабатывать такую ситуацию и либо падать (в связи с тем, что функций своих она выполнять не может) либо просто делать reconnect.

СУБД в данном контексте - это сетевой интерфейс, а прикладная программа - bind.

Мы запустили named, он сел на интерфейс, на котором он нам нужен. Далее мы этот интерфейс перезапустили. named остался работать, хотя своих функций так как ожидает от него администратор - он уже не выполняет.

Тут ещё накладывается то, что такая фича есть только у нас и больше ни у кого.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184873</commentid>
    <comment_count>27</comment_count>
    <who name="Stanislav Levin">slev</who>
    <bug_when>2019-10-10 20:04:38 +0300</bug_when>
    <thetext>Проблема из-за сброса CAP_NET_BIND_SERVICE.

Альтовый сброс привилегий отличается от варианта апстрима.
Если в апстриме сброс до рабочего состояния(ruid, euid,suid: named; caps: net_bind_service, sys_resource +) происходит еще до загрузки конфигурации BIND&apos;а.

То у нас это проходит в два этапа:
1) до загрузки конфигурации происходит сброс (ruid, euid, suid: named, named, 0; caps: net_bind_service, sys_resource +)
2) во время загрузки конфигурации (ruid, euid, suid: named, named, named; caps: )

Еще два немаловажных отличия заключаются в том, что апстрим не дропает флаг SECBIT_KEEP_CAPS и capability bounding set.

Пункт два происходит чуть-чуть(несколько долей секунды) позже запуска потока плагина bind-dyndb-ldap. Отсюда возникает рэйс, так как RT сигнал, сгенерированный setresuid из основного потока BIND, рвет соединение плагина с доменным сокетом LDAP. Но это решаемо в самом плагине.

А вот дроп (по моему мнению) CAP_NET_BIND_SERVICE можно отключить. Если Дмитрий не возражает, то я мог бы подготовить патч на патч. Хотелось бы узнать мнение, чтобы не тратить время впустую.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184878</commentid>
    <comment_count>28</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2019-10-10 21:47:33 +0300</bug_when>
    <thetext>(In reply to comment #27)
&gt; А вот дроп (по моему мнению) CAP_NET_BIND_SERVICE можно отключить. Если Дмитрий
&gt; не возражает, то я мог бы подготовить патч на патч.

Тут всё обсуждение ровно о том, что мне нужно, чтобы никаких CAP&apos;ов у работающего bind&apos;а не было, Антон хочет, чтобы у него bind работал с CAP_NET_BIND_SERVICE, и удовлетворить эти противоположные желания одним и тем же bind&apos;ом пока не получается.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184880</commentid>
    <comment_count>29</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2019-10-10 22:32:28 +0300</bug_when>
    <thetext>Мне кажется, что в каком-то из обсуждений мы сошлись на том, что должна быть опция -#, включающая нужное тебе поведение. 

Мы можем Стаса попросить это реализовать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>190596</commentid>
    <comment_count>30</comment_count>
    <who name="Stanislav Levin">slev</who>
    <bug_when>2020-06-08 12:46:58 +0300</bug_when>
    <thetext>Ручка для BIND добавлена:
http://git.altlinux.org/tasks/archive/done/_246/252433/logs/events.5.1.log</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209429</commentid>
    <comment_count>31</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2022-04-13 09:23:40 +0300</bug_when>
    <thetext>(In reply to Stanislav Levin from comment #30)

&gt; Ручка для BIND добавлена:
&gt; http://git.altlinux.org/tasks/archive/done/_246/252433/logs/events.5.1.log

Наверное надо было в changelog про этот баг добавить, а то за версией в задание лезть надо.

* Fri May 29 2020 Stanislav Levin &lt;slev@altlinux&gt; 9.11.19-alt3
- Placed Linux capabilities dropping under control(1).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>209444</commentid>
    <comment_count>32</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2022-04-13 11:01:38 +0300</bug_when>
    <thetext>(In reply to Sergey Y. Afonin from comment #31)

&gt; * Fri May 29 2020 Stanislav Levin &lt;slev@altlinux&gt; 9.11.19-alt3
&gt; - Placed Linux capabilities dropping under control(1).

Описано и добавляется в /etc/sysconfig/bind</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>