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

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

    <bug>
          <bug_id>7366</bug_id>
          
          <creation_ts>2005-07-14 19:36:45 +0400</creation_ts>
          <short_desc>Патч  для чтения содержимого /etc/fstab.d</short_desc>
          <delta_ts>2008-01-08 11:12:38 +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>mount</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>NOTABUG</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vitaly Lipatov">lav</reporter>
          <assigned_to name="inger@altlinux.org">inger</assigned_to>
          <cc>boyarsh</cc>
    
    <cc>eostapets</cc>
    
    <cc>evg</cc>
    
    <cc>glebfm</cc>
    
    <cc>icesik</cc>
    
    <cc>kas</cc>
    
    <cc>ldv</cc>
    
    <cc>legion</cc>
    
    <cc>mike</cc>
    
    <cc>morozov</cc>
    
    <cc>pilot</cc>
    
    <cc>placeholder</cc>
    
    <cc>sr</cc>
    
    <cc>the_arioch</cc>
    
    <cc>vt</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>27284</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-07-14 19:36:45 +0400</bug_when>
    <thetext>Предлагается внести в mount считывание файлов из /etc/fstab.d, 
реализованное предлагаемым патчем. Если к нему есть замечания, 
будем исправлять. 
Надеюсь, это позволит избежать повторения #5889, #5797, #5635</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27286</commentid>
    <comment_count>1</comment_count>
      <attachid>988</attachid>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-07-14 19:37:23 +0400</bug_when>
    <thetext>Created attachment 988
/etc/fstab.d reading</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27806</commentid>
    <comment_count>2</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-07-28 17:04:47 +0400</bug_when>
    <thetext>Известно, что /etc/fstab напрямую читается в kdelibs? и glibc  </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27809</commentid>
    <comment_count>3</comment_count>
    <who name="Eugene Ostapets">eostapets</who>
    <bug_when>2005-07-28 18:42:07 +0400</bug_when>
    <thetext>Угу, в kdelibs за это отвечает kdecore/kmountpoint.cpp. Можно попробовать
переписать этот код для поддрежки /etc/fstab.d</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27882</commentid>
    <comment_count>4</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-07-30 01:11:29 +0400</bug_when>
    <thetext>А в glibc - misc/fstab.c 
Возникла идея заменить соответствующие части кода, дублирующие 
функциональность из glibc, на вызов функций из glibc. </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27891</commentid>
    <comment_count>5</comment_count>
    <who name="Eugene Ostapets">eostapets</who>
    <bug_when>2005-07-30 12:40:44 +0400</bug_when>
    <thetext>Для надежности было бы неплохо распаковать исходники все wm и их аплетов...
И поискать еще вхождения /etc/fstab для того, чтобы представить себе объем работ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27901</commentid>
    <comment_count>6</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-07-31 20:02:44 +0400</bug_when>
    <thetext>Вы предлагаете изменить getfsent(3), или ограничиться утилитой mount(8)?

Вообще, плохо, конечно, что так много софта реализуют свой собственный
getfsent(8), надо бы такие программы обвешать багами.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27903</commentid>
    <comment_count>7</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-07-31 22:44:15 +0400</bug_when>
    <thetext>Предлагаю: 
- изменить getfsent (как это уже сделано для mount) 
- обнаружить и развесить баги на программы, которые читают /etc/fstab 
самобытно 
- написать для вышеозначенных программ патчи с тем, чтобы они использовали 
getfsent 
Не знаю, насколько данная задача для вас приоритетна; если данный план 
разумен, то я мог бы поручить это одному из разработчиков @etersoft 
 </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27904</commentid>
    <comment_count>8</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2005-08-01 00:06:56 +0400</bug_when>
    <thetext>Не стану утверждать, что эта задача для меня приоритетна.
План действий выглядит логично.
Убедить glibc&apos;шный upstream в необходимости расширения функциональности getfsent
будет очень сложно.  Впрочем, этот факт не является препятствием.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27945</commentid>
    <comment_count>9</comment_count>
    <who name="Eugene Ostapets">eostapets</who>
    <bug_when>2005-08-02 13:41:48 +0400</bug_when>
    <thetext>После детельного изучения kdelibs с него снимаются все обвинения - используется
getmntent из glibc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27946</commentid>
    <comment_count>10</comment_count>
    <who name="Serge Ryabchun">sr</who>
    <bug_when>2005-08-02 14:13:18 +0400</bug_when>
    <thetext>&gt; После детельного изучения kdelibs с него снимаются все обвинения - используется
&gt; getmntent из glibc

Но это добавляет проблемы, если getfsent пропатчить на предмет /etc/fstab.d
как два байта переслать, то интерфейс getmntent и так ориентирован на множество
файлов и унесен на уровень конечного приложения, т.е. придется перелопачивать
весь софт для поиска getmntent и патчить, патчить и еще раз патчить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27947</commentid>
    <comment_count>11</comment_count>
    <who name="Eugene Ostapets">eostapets</who>
    <bug_when>2005-08-02 14:23:15 +0400</bug_when>
    <thetext>Ага, начиная с coreutils и заканчивая несколькими сотнями аплетов для
разнообразных WM...

Стоит ли овчинка выделки?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29817</commentid>
    <comment_count>12</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2005-09-01 19:30:59 +0400</bug_when>
    <thetext>Я считаю что стоит и по возможности буду участвовать в приведении программ к 
использованию библиотечной функции из glibc. </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29845</commentid>
    <comment_count>13</comment_count>
    <who name="Serge Ryabchun">sr</who>
    <bug_when>2005-09-02 11:30:40 +0400</bug_when>
    <thetext>(In reply to comment #12)
&gt; Я считаю что стоит и по возможности буду участвовать в приведении программ к 
&gt; использованию библиотечной функции из glibc. 

Какой именно, getfsent или getmntent? getfsent обсолитнули и суперсиднули
getmntent. А обвязка вокруг getmntent для поддержки /etc/fstab.d будет выглядеть
байт в байт как текущий getfsent с трехстрочным патчем.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31088</commentid>
    <comment_count>14</comment_count>
    <who name="burov dmitry">the_arioch</who>
    <bug_when>2005-09-28 13:19:35 +0400</bug_when>
    <thetext>fstab.d - это серьезно. Это надо апстрим убеждать соглажаться :-) 

IMHO нехорошо, что getmntent предполагает, что &quot;/etc/fstab&quot; и &quot;/etc/mtab&quot; (? &quot;/
proc/mounts&quot;) зашиты в приложениях как константы. Нет функций, их возвращающих.

Если сделать функции, возвращающие список файлов fstab(/etc/fstab и /etc/fstab.
d) и список файлов mtab (пока один единств.) - то вполне можно реализовать 
getfsent через getmntent + один список.
И аналогично сделать getmfsent (mounted fs).

И вот это все проталкивать в upstream.

Делать обвязку для getmntent, чтобы ей указывали на один файл, а она читала из 
другого - это жуть IMHO.

....а нельзя сделать что-то типа shadow ?
Чтобы /etc/fstab был сокетом, за который отвечал бы демон.
А демон бы рабивал fstab на постоянную часть и fstab.d ?
Правда это уже по сложности что-то типа CVS получается  </thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>60582</commentid>
    <comment_count>15</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2008-01-08 07:29:21 +0300</bug_when>
    <thetext>Поскольку выбранным направлением стали новые методы автомонтирования, и 
изменение /etc/fstab более не требуется,
и риску порчи он более не подвержен, закрываю.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>988</attachid>
            <date>2005-07-14 19:37:23 +0400</date>
            <delta_ts>2005-07-14 19:37:23 +0400</delta_ts>
            <desc>/etc/fstab.d reading</desc>
            <filename>util-linux-2.12p-fstab.d.patch</filename>
            <type>text/plain</type>
            <size>1794</size>
            <attacher name="Vitaly Lipatov">lav</attacher>
            
              <data encoding="base64">UGF0Y2ggZm9yIHJlYWRpbmcgL2V0Yy9mc3RhYi5kIGZpbGVzIGFmdGVyIC9ldGMvZnN0YWIKQXV0
aG9yOiBEYW5paWwgRGF2eWRvdiA8a29vY2h5QGV0ZXJzb2Z0LnJ1PgotLS0gL2hvbWUva29vY2h5
L1Byb2plY3RzL2ZzdGFiLmMJMjAwNC0xMi0yMSAyMjowOToyNCArMDMwMAorKysgdXRpbC1saW51
eC0yLjEycC9tb3VudC9mc3RhYi5jCTIwMDUtMDctMTQgMTg6MjQ6MzYgKzA0MDAKQEAgLTksNiAr
OSw3IEBACiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRl
IDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgogI2luY2x1ZGUgIm1udGVudC5oIgog
I2luY2x1ZGUgImZzdGFiLmgiCiAjaW5jbHVkZSAic3VuZHJpZXMuaCIKQEAgLTE3MywyNiArMTc0
LDU4IEBACiAJcmVhZF9tbnRlbnRjaG4obWZwLCBmbmFtLCBtYyk7CiB9CiAKLXN0YXRpYyB2b2lk
Ci1yZWFkX2ZzdGFiKCkgewotCW1udEZJTEUgKm1mcCA9IE5VTEw7Ci0JY29uc3QgY2hhciAqZm5h
bTsKLQlzdHJ1Y3QgbW50ZW50Y2huICptYyA9ICZmc3RhYjsKLQotCWdvdF9mc3RhYiA9IDE7Ci0J
bWMtPm54dCA9IG1jLT5wcmV2ID0gTlVMTDsKK3N0YXRpYyBpbnQKK3JlYWRfZnN0YWJfZmlsZShj
b25zdCBjaGFyICpmbmFtLCBzdHJ1Y3QgbW50ZW50Y2huICptYyl7CiAKLQlmbmFtID0gX1BBVEhf
RlNUQUI7CisJbW50RklMRSAqbWZwID0gTlVMTDsKKwkKIAltZnAgPSBteV9zZXRtbnRlbnQgKGZu
YW0sICJyIik7CisKIAlpZiAobWZwID09IE5VTEwgfHwgbWZwLT5tbnRlbnRfZnAgPT0gTlVMTCkg
ewogCQlpbnQgZXJyc3YgPSBlcnJubzsKIAkJZXJyb3IoXygid2FybmluZzogY2FuJ3Qgb3BlbiAl
czogJXMiKSwKLQkJICAgICAgX1BBVEhfRlNUQUIsIHN0cmVycm9yIChlcnJzdikpOwotCQlyZXR1
cm47CisJCSAgICAgIGZuYW0sIHN0cmVycm9yIChlcnJzdikpOworCQlyZXR1cm4gMDsKIAl9CiAJ
cmVhZF9tbnRlbnRjaG4obWZwLCBmbmFtLCBtYyk7CisJcmV0dXJuIDE7CisKK30KKworc3RhdGlj
IHZvaWQKK3JlYWRfZnN0YWIoKSB7CisKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwljaGFyICpkaXJfcGF0
aDsKKwlESVIgKmRpcjsKKwlzdHJ1Y3QgZGlyZW50ICplbnRyeTsKKwljaGFyIGVudHJ5X3BhdGhb
UEFUSF9NQVggKyAxXTsKKwlzaXplX3QgcGF0aF9sZW47CisJc3RydWN0IG1udGVudGNobiAqbWMg
PSAmZnN0YWI7CisKKwltYy0+bnh0ID0gbWMtPnByZXYgPSBOVUxMOworCWdvdF9mc3RhYiA9IDE7
CisKKwlpZighcmVhZF9mc3RhYl9maWxlKF9QQVRIX0ZTVEFCLG1jKSkgcmV0dXJuOworCisJZGly
X3BhdGggPSBfUEFUSF9GU1RBQiAiLmQvIjsJCisJc3RybmNweSAoZW50cnlfcGF0aCwgZGlyX3Bh
dGgsIHNpemVvZiAoZW50cnlfcGF0aCkpOworCWRpciA9IG9wZW5kaXIgKGRpcl9wYXRoKTsKKwlw
YXRoX2xlbiA9IHN0cmxlbiAoZGlyX3BhdGgpOworCisJd2hpbGUoKGVudHJ5PXJlYWRkaXIoZGly
KSkhPU5VTEwpIHsKKworCQlzdHJuY3B5IChlbnRyeV9wYXRoICsgcGF0aF9sZW4sIGVudHJ5LT5k
X25hbWUsCisJCQkgc2l6ZW9mIChlbnRyeV9wYXRoKSAtIHBhdGhfbGVuKTsKKwkJbHN0YXQgKGVu
dHJ5X3BhdGgsICZzdCk7CisJCWlmIChTX0lTUkVHIChzdC5zdF9tb2RlKSkKKwkJCXJlYWRfZnN0
YWJfZmlsZShlbnRyeV9wYXRoLG1jKTsKKwkJCisJCQorCX0KKwljbG9zZWRpcihkaXIpOwogfQot
ICAgICAKKwogCiAvKiBHaXZlbiB0aGUgbmFtZSBOQU1FLCB0cnkgdG8gZmluZCBpdCBpbiBtdGFi
LiAgKi8gCiBzdHJ1Y3QgbW50ZW50Y2huICoK
</data>

          </attachment>
      

    </bug>

</bugzilla>