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

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

    <bug>
          <bug_id>438</bug_id>
          
          <creation_ts>2002-01-23 16:17:49 +0300</creation_ts>
          <short_desc>Options for isofs does not recognized after \&apos;iocharset\&apos;</short_desc>
          <delta_ts>2003-08-25 15:18:27 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>kernel24-up</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>P4</priority>
          <bug_severity>minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vitaly A. Ostanin">vyt</reporter>
          <assigned_to name="Peter &apos;Nidd&apos; Novodvorsky">nidd</assigned_to>
          
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>415</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly A. Ostanin">vyt</who>
    <bug_when>2002-01-23 16:17:49 +0300</bug_when>
    <thetext>Строка
mount -t auto /dev/cdrom /mnt/tmp -o session=0,iocharset=koi8-r,ro,showexec
работает, а строка
mount -t auto /dev/cdrom /mnt/tmp -o iocharset=koi8-r,ro,showexec,session=0
не работает.

---

---

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3055</commentid>
    <comment_count>1</comment_count>
    <who name="Bug Reporter">reporter</who>
    <bug_when>2002-03-07 19:21:01 +0300</bug_when>
    <thetext>Will be fixed in 2.4.18-alt2, here is the patch (replace with it linux-2.4.6-iso9660opt.patch
---
--- inode.c.orig        Thu Mar  7 18:41:45 2002                                                                             
+++ inode.c     Thu Mar  7 19:35:03 2002                                                                                     
@@ -295,6 +295,8 @@                                                                                                          
        popt-&amp;gt;sbsector=-1;                                                                                                   
        if (!options) return 1;                                                                                              
        for (this_char = strtok(options,\&amp;quot;,\&amp;quot;); this_char; this_char = strtok(NULL,\&amp;quot;,\&amp;quot;)) {                                     
+               if (!this_char)                                                                                              
+                   return 1;                                                                                                
                if (strncmp(this_char,\&amp;quot;norock\&amp;quot;,6) == 0) {                                                                    
                  popt-&amp;gt;rock = \&apos;n\&apos;;                                                                                          
                  continue;                                                                                                  
@@ -340,13 +342,13 @@                                                                                                        
                        else if (!strcmp(value,\&amp;quot;acorn\&amp;quot;)) popt-&amp;gt;map = \&apos;a\&apos;;                                                    
                        else return 0;                                                                                       
                }                                                                                                            
-               if (!strcmp(this_char,\&amp;quot;session\&amp;quot;) &amp;amp;&amp;amp; value) {                                                                 
+               else if (!strcmp(this_char,\&amp;quot;session\&amp;quot;) &amp;amp;&amp;amp; value) {                                                            
                        char * vpnt = value;                                                                                 
                        unsigned int ivalue = simple_strtoul(vpnt, &amp;amp;vpnt, 0);                                                
                        if(ivalue &amp;lt; 0 || ivalue &amp;gt;99) return 0;                                                               
                        popt-&amp;gt;session=ivalue+1;                                                                              
                }                                                                                                            
-               if (!strcmp(this_char,\&amp;quot;sbsector\&amp;quot;) &amp;amp;&amp;amp; value) {                                                                
+               else if (!strcmp(this_char,\&amp;quot;sbsector\&amp;quot;) &amp;amp;&amp;amp; value) {                                                           
                        char * vpnt = value;                                                                                 
                        unsigned int ivalue = simple_strtoul(vpnt, &amp;amp;vpnt, 0);                                                
                        if(ivalue &amp;lt; 0 || ivalue &amp;gt;660*512) return 0;                                                          
@@ -396,7 +398,7 @@                                                                                                          
                    break;                                                                                                   
                  }                                                                                                          
                }                                                                                                            
-               else return 1;                                                                                               
+               else continue;                                                                                               
        }                                                                                                                    
        return 1;                                                                                                            
 }
---</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6420</commentid>
    <comment_count>2</comment_count>
    <who name="Bug Reporter">reporter</who>
    <bug_when>2002-03-07 19:21:01 +0300</bug_when>
    <thetext>Will be fixed in 2.4.18-alt2, here is the patch (replace with it linux-2.4.6-iso9660opt.patch
---
--- inode.c.orig        Thu Mar  7 18:41:45 2002                                                                             
+++ inode.c     Thu Mar  7 19:35:03 2002                                                                                     
@@ -295,6 +295,8 @@                                                                                                          
        popt-&amp;gt;sbsector=-1;                                                                                                   
        if (!options) return 1;                                                                                              
        for (this_char = strtok(options,\&amp;quot;,\&amp;quot;); this_char; this_char = strtok(NULL,\&amp;quot;,\&amp;quot;)) {                                     
+               if (!this_char)                                                                                              
+                   return 1;                                                                                                
                if (strncmp(this_char,\&amp;quot;norock\&amp;quot;,6) == 0) {                                                                    
                  popt-&amp;gt;rock = \&apos;n\&apos;;                                                                                          
                  continue;                                                                                                  
@@ -340,13 +342,13 @@                                                                                                        
                        else if (!strcmp(value,\&amp;quot;acorn\&amp;quot;)) popt-&amp;gt;map = \&apos;a\&apos;;                                                    
                        else return 0;                                                                                       
                }                                                                                                            
-               if (!strcmp(this_char,\&amp;quot;session\&amp;quot;) &amp;amp;&amp;amp; value) {                                                                 
+               else if (!strcmp(this_char,\&amp;quot;session\&amp;quot;) &amp;amp;&amp;amp; value) {                                                            
                        char * vpnt = value;                                                                                 
                        unsigned int ivalue = simple_strtoul(vpnt, &amp;amp;vpnt, 0);                                                
                        if(ivalue &amp;lt; 0 || ivalue &amp;gt;99) return 0;                                                               
                        popt-&amp;gt;session=ivalue+1;                                                                              
                }                                                                                                            
-               if (!strcmp(this_char,\&amp;quot;sbsector\&amp;quot;) &amp;amp;&amp;amp; value) {                                                                
+               else if (!strcmp(this_char,\&amp;quot;sbsector\&amp;quot;) &amp;amp;&amp;amp; value) {                                                           
                        char * vpnt = value;                                                                                 
                        unsigned int ivalue = simple_strtoul(vpnt, &amp;amp;vpnt, 0);                                                
                        if(ivalue &amp;lt; 0 || ivalue &amp;gt;660*512) return 0;                                                          
@@ -396,7 +398,7 @@                                                                                                          
                    break;                                                                                                   
                  }                                                                                                          
                }                                                                                                            
-               else return 1;                                                                                               
+               else continue;                                                                                               
        }                                                                                                                    
        return 1;                                                                                                            
 }
---</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>