CRLF / LF conversion, all over again
John Malmberg
wb8tyw at qsl.net
Thu Feb 21 17:53:02 GMT 2002
Ok, I finally got a chance to look up your references.
Timothee Besset wrote:
> I'm new to the list, so please bear with me .. I think this discussion
> belongs to the samba technical though. Some URLs to freshen things:
>
> [1] http://de.samba.org/samba/ftp/docs/textdocs/CRLF-LF-Conversions.txt
This pretty much explains things, but the explaination is incomplete.
If you see my other post in a thread related to this one, it fills in
the other missing details.
It also indicates that if you want to do anything, you are on your own
to implement and test.
With open source if you want a change:
1. Do it your self
2. Pay someone to do it for you.
3. Ask and hope someone will.
If you are going to start on this, you might want to find the version of
that explaination file in the HEAD source of SAMBA, update it with the
missing information, and submit it.
> [2] http://marc.theaimsgroup.com/?l=samba&m=94907661120899&w=2
> [3] http://marc.theaimsgroup.com/?l=samba&m=98045359626997&w=2
> [4] http://www.tigris.org/files/documents/15/48/svn-design.html
> (Text vs binary issues)
>
> my problem is very similar to what's described in [2]
With the current SAMBA, the VFS is the way to implement this as you have
been told. You now know that after you identify the criterion as to
convert a file or not, you have to deal with random access. If you can
find a way to do this with out killing the CPU, you can post it on the
SAMBA-VMS at LISTS.SAMBA.ORG.
Even if there is no interest elsewhere, it is a real problem that can
not be avoided. Only on OpenVMS, it is not just a matter of replacing
CR-LFs, there are many other ways that a text file can be represented.
The operating system in most cases will do the translation, but not when
random access is involved.
And if the normal mode of a text file on OpenVMS does not show up as a
text file on a share, the inconvenience is far worse than what you are
encountering.
I am currently concentrating on RSYNC, and will have the same issue
there. I have not yet determined the best way to solve it. But
personally I will not use duplicate files or special directories. That
is just asking for a maintenance nightmare.
The issue with CVS is different, as it usually knows that it is dealing
with text files, and it is not doing random access updates. So
converting as files are going in and out to a host friendly format is
not a big deal.
> I want to work on a share that has a mix of binary files and text files. I
> don't want to manipulate LF on win32 and CRLF on unix occasionaly, because
> it is a half-assed solution. I want to have text files in the right line
> ending format wherever I go.
Again, most Microsoft Windows applications that deal with text files can
automatically deal with CR or CR/LF.
While you are inconvenienced, the number of Windows applications that
care is dropping. If you have the source to the LINUX applications, you
can change it to be neutral also. The maintainer of that package may
appreciate the work.
> My proposal would be something like this:
>
> Each shared directory would hold a .crlf/ directory
You can do this, but it would be very inefficient and is intruding on
users file name and directory selection.
And reserving filenames or directory names is not something that an
application like SAMBA can arbitrarily do. All directory and control
filenames need to be site selectable. The same with UIDs, usernames,
and group names.
Your own private VFS can be better taylored, and others may find it useful.
> Ok, so hopefully you can tell me wether this is an important issue for
> Samba, wether it is being worked on.
Your first URL reference answered that part of the question. It is not
being worked on in the UNIX versions.
>how hard it would be to do etc
Only one of the stumbling blocks is mentioned in that reference. The
smaller one. The bigger one is the random access updates.
It is very hard to do and get it correct. But I have no choice but to try.
I have it mostly working for files of less than 64K in size. After that
I hit the point where the Microsoft client starts transfering it out
of order. I also have issues where sometimes Notepad writes the file
back into the original instead of deleting the file and creating a new one.
-John
wb8tyw at qsl.network
Personal Opinion Only
Those that do not want to see ocasional discussions of CR-LF to LF
conversions on this mailing list have an incentive to submit an update
to the documentation covering these issues better.
Samba exists on more platforms than UNIX. And while the main Samba team
has their hands full working on the platforms that they know, and can
not be expected to track the non-UNIX issues, I feel that it is on topic
to discuss cross platform SAMBA issues here. And this is one.
Timothee did take the inititive into doing some research on the subject
before posting his proposal. That is a lot more than a lot of people do.
More information about the samba-technical
mailing list