Linux-Misc Digest #265, Volume #24               Tue, 25 Apr 00 12:13:15 EDT

Contents:
  Re: How Microsoft inhibits competition & innovation ([EMAIL PROTECTED])
  Re: lilo without 1024 cyl. limit (John Brock)
  Sun disk writes are very slow, looking for explanation (Roman Sulzhyk)
  Re: pine and roadrunner (Jan Schaumann)
  Re: [HELP] How to describe audio/x-playlist ("Lam Dang")
  Re: **** USER PERMISSIONS **** (David Efflandt)
  Re: News server recommendation (Russ Allbery)
  Re: Serial port (Leonard Evens)

----------------------------------------------------------------------------

From: [EMAIL PROTECTED]
Subject: Re: How Microsoft inhibits competition & innovation
Crossposted-To: 
comp.os.ms-windows.nt.advocacy,comp.os.ms-windows.advocacy,comp.lang.java.advocacy
Date: 24 Apr 2000 23:37:47 GMT

Sen Donnchadha <[EMAIL PROTECTED]> wrote:
: On 23 Apr 2000 23:13:56 GMT, [EMAIL PROTECTED] wrote:
        >snip<
: What's classic is your childish attempt to distort what I said, which was
: that there are "half a handful of well-known instances". Somehow that
: turned into "many well-known and commonly experienced examples"?! OK then,
: I'll give you the same challenge I've given countless others: name at
: least 5 examples of problems you've experienced that have been traced to
: unique DLL conflicts. I'm not talking about times you've blindly
: attributed something to DLL Hell; I want proof.

        "Proof" beyond all doubt is often difficult to find in this case, as
        unlike many other systems the basic tools to locate the problem
        aren't shipped with the system.  Somehow I don't even think you
        would argue that Visual C++ needs to be installed on every user's
        machine that has a problem.

        Most of the time, we try to fix the problem as quickly as possible,
        which on Windows systems rarely means actually locating it.  Even MS
        "support" will tell you to simply reinstall, rather then find the
        problem.

        >snip<
: No offense, but I find this extremely hard to believe, as Win98 backs up
: the registry at boot time and keeps at least five backups around. Perhaps
: you simply didn't know how to find them?

        You're right, I don't.  You'd think that when the system fries
        itself and tells me the registry is non-existent, that it might be
        so kind as to point me to the backup?  I guess not...

        What's the point of automatically backing up the registry if the
        system has no idea how to find the backups on its own, or at least
        point the user to them?  The "manual" that Win98 typically comes
        with now has no mention of it...if it's anywere it's in the online
        "help" docs...which can't be accessed through dos of course...

: Also, Win9x has absolutely no file security; Apache could issue a single
: call and blow the registry away.

        Yep.  That's a problem.

: Should have been prevented by the OS?

        Yes.

: Not in Win9x, whose architecture was deliberately compromised in favor of
: legacy compatibility.

        I'd call that a fault.  Wouldn't you?

: It's not like MS doesn't offer an OS that *DOES* protect against this kind
: of thing.

        They do?  You're not talking about NT, are you?

        Many apps won't run correctly or at all unless the user is an
        Administrator... My most recent experience with this was trying to
        get the Palm Desktop to work.  If run as anyone but an Administrator
        (and the admin who installed it, no less) it "performed an illegal
        operation".

        Perhaps Win2k has fixed this, I don't know.

:>      Of course not.  However, Unix application installs however, don't
:>      mess with /usr/lib and friends, thus making the "problem"
:>      impossible.
: 
: Excuse me? Where the hell do you think gcc put its data files?

        /usr/local/lib/gcc-lib/sparc-sun-solaris2.4/2.7.2.1
        /usr/local/lib/gcc-lib/i386-unknown-freebsd3.1/2.8.1

        ...etc

        Doesn't look like /lib or /usr/lib to me.

: How about X11?

        /usr/X11R6/lib/X11

        And non-core X is in /usr/local/lib/X11

        What's your point?

: Honestly, I'm beginning to think you haven't spent much time with Unix at
: all.

        Funny, I was thinking the same thing about you.

:> Unless you're running a braindead system like RedHat...but that's another
:> flame war...
: 
: So Unix is *NOT* immune to these problems after all?

        If a single particular vender decides to go off and break a
        perfectly good system, sure no one can stop them.

:>      Application installs have no business touching anything in
:>      C:/WINDOWS/SYSTEM*, yet almost every single one does.
:>
: It is a tremendous exaggeration to say that almost every app touches the
: system directory. That simply isn't true. Games almost never do, nor does
: a huge amount of shareware and freeware.

        Of course...with no real package management system...it's impossible
        to tell by looking a system who installed what or needs which
        anywere on the system...

        This still hadn't been fixed with Win2k, at least not by RC2. 
        Perhaps they've fixed it by gold, but I doubt it.

:> Unix venders also tend to write many (most/all) the drivers themself,
:> which makes it much easier to maintain quality controls.
: 
: If Linux continues its ascent, that won't be true for long. I personally
: can't wait to hear the Linvocate excuses when the hardware manufacturers
: start rushing out Linux drivers and stability goes down the toilet.

        They already are, however the quality of the code so far, has been
        quite good.  Many are also either open source or planning on
        releasing source shortly, which can only aid in reliability in the
        long run.

:>      NT's network libraries don't have this problem, however 95/98's do. 
:>      Most network (at least TCP/IP) calls block the entire system until
:>      they return, error or not.  The three finger solute normally works,
:>      however.
:>
: 
: This is totally untrue. You can easily verify that by using IE on Win9x to
: access a nonexistent or downed Website and observing that the system
: remains perfectly responsive as the HTTP request times out.

        It depends on how the app is written.  That's the problem; It's an
        application level issue that should be a OS layer issue.  Try the
        same test with MS's stock telnet and watch as you can't even
        minimize the window...

:>              javascript:while(1){}
        >snip<
: Sorry, but the above would only have killed Win9x if you were running a
: 16-bit version of Netscape.

        32bit, sorry to disappoint you.

: And of course, WinNT/2K deals with this kind of thing as easily as Unix
: does, so it's not like MS can't produce an OS with proper multitasking.

        I'm not sure I'd call NT "proper" multitasking.  It's trivial for
        one app to end up in a loop and suck 99.9% of the CPU, without the
        OS ever adjusting priorities and the entire machine quickly moving
        like a slug. -The above condition is a common side effect of a
        misconfigured WebLogic server, btw.  The same misconfiguration under
        Solaris causes a CPU spike to be sure, however the machine never
        becomes unresponsive and the priority is quickly dropped to keep it
        under control.  All the time NT is having a hard time keeping the
        mouse smooth...

        Again, perhaps Win2k has fixed this, I haven't tried nore have much
        inclination to.

        >snip<
: Hey, I never said Microsoft was perfect. They are so huge and put out so
: much stuff that they're bound to screw up here and there. But a record of
: 3 or 4 bad DLL upgrades over the course of a decade in an OS containing
: thousands of DLLs isn't that bad if you ask me.

        Now there's the understatement of the decade...

:>: You've got it backwards. Windows does *NOT* have a design that requires
:>: nontrivial apps to modify the OS. However, many apps *DO* modify the OS
:>: anyway. Why? Because of the intensity of commercial competition.
:>
:>      Oh, that's rich.  Why should the OS allow any apps to modify the
:>      system directory in the first place, competition or not?
: 
: Umm, to allow the administrator to install and remove OS components?

        Of course, it might be nice to at least *inform* the admin that the
        OS is being changed?  If you're lucky, on Windows you'll see
        "Writting C:\WINDOWS\SYSTEM\SomethingImportant.DLL" flash by...

:>: Oh, you're leaving out a *BUNCH* of stuff here. In fact, Unix is way
:>: *WORSE* in this regard than Windows. That's because nontrivial Unix
:>: apps have to sprinkle bits and pieces of themselves all over the file
:>: system.
:>
:>      That's a feature.
: 
: Oh, that's rich! Just a minute ago you were claiming that Unix's big
: advantage was that its apps didn't sh*t all over the file system. Now
: you're saying that they do, and that this is a *FEATURE*?! LOL!!!

        Using usr, local, etc, var, opt, et al as intended is not, "shitting
        all over the file system".

:>      The usage of the Unix directory structure is simple, complete,
:>      intuitive, and well understood by it would seem, everyone that works
:>      with Unix except you.
: 
: You must be joking. The Unix directory structure is an unbelievable mess -

        Now I'm convinced of it; You're not a Unix user; "10 years of Unix
        programming experience" is at best, a farce.

: one that you just admitted even companies like Redhat can't figure out.

        It's not that RedHat hasn't figured it out, they just don't seem to
        care.  They are the MS of the Linux world...may god have pitty on
        them and pitty the fools that follow them.

: Each Unix vendor uses their own directory structure, and there's no rhyme
: or reason to any of it.

        Beyond BSD's /usr/local vs SysV's /opt, everything else is the same
        with nothing but rhyme and reason behind it.  Even within /usr/local
        and /opt, the same basic etc/var/usr/bin/lib/include structures are
        used.

        Unlike Windows, Unix doesn't believe in throwing everything and the
        kitchen sink into one or two directories. -Why are my screen saver
        and desktop background image files in C:\WINDOWS\SYSTEM?  Fonts? 
        DLLs?  Applications?  Sound files?  My closet is more
        organized...and that's frightening...

:>: And that's just for relatively simple apps. Just wait until commercial
:>: ISVs start giving your stable little OS their "magic" treatment.
:>
:>      We'll see.  For the most part, applications modifying the OS is such
:>      an extreme no-no in the Unix world that the typical response to an
:>      ISV trying to do such a thing would be met with great hostility or
:>      silence.
: 
: That may be true in the current Linux nerd community, but what happens
: when Linux is used by average Joes and applications have no choice but
: install themselves automatically a-la Windows apps? What happens when the
: makers of sh*t like SystemWorks and ZipMagic decide to start messing with
: Linux?

        Good systems have good package management systems.  The ports system
        of FreeBSD is a prime example (www.freebsd.org/ports/), so are the
        packages of Debian.

        The "magic" is controlled and monitored quite well by the better
        systems.

:>      Indeed, however that has nothing to do with the GUI.
: 
: However, it does show that OS stability need not suffer if said OS has a
: kernel-mode GUI.

        ...unless it's from a vender that is notorious for having screen
        savers run over a weekend and reliably cause a BSOD.

        >snip<
:> I'll fault any and all technology who's design choices have a hidden and
:> damaging agenda behind them.
: 
: That would be any technology created for commercial gain. The agenda is to
: damage the competition as well as your wallet.

        There is quite a bit of software that competes (OH MY GOD!) on
        quality, functionality, and compatibility, not on how it can
        constantly change its formats and protocols explicitly so nothing
        else can talk to it.  From Word .doc formats to SMB, that's one of
        MS's main design decisions.

-- 
-Zenin ([EMAIL PROTECTED])           From The Blue Camel we learn:
BSD:  A psychoactive drug, popular in the 80s, probably developed at UC
Berkeley or thereabouts.  Similar in many ways to the prescription-only
medication called "System V", but infinitely more useful. (Or, at least,
more fun.)  The full chemical name is "Berkeley Standard Distribution".

------------------------------

From: [EMAIL PROTECTED] (John Brock)
Crossposted-To: comp.os.linux.alpha,comp.periphs.scsi
Subject: Re: lilo without 1024 cyl. limit
Date: 24 Apr 2000 19:50:46 -0400

Thanks for the URL; it's an interesting document.  I notice though that
it's over two years old.  So there has been plenty of time for SCSI
card vendors to have implemented the interface if it is their intention
to do so.  Do you have any particular reason to think that they ever
will, other then a general expectation that they will put aside their
differences and act in the customer's best interest?  :-(  I'm also a
little dubious about whether it can really be that easy to transfer an
EIDE interface to SCSI; are you sure this is actually do-able?

In article <[EMAIL PROTECTED]>,
John in SD  <[EMAIL PROTECTED]> wrote:
>John,
>
>The EDD packet call interface is so straightforward that I would
>expect SCSI vendors to begin implementing it. SCSI-2 uses 32-bit,
>0-based addressing, and that is exactly what the standard is set up
>for.  (Actually the standard uses 64-bit addressing, but disks aren't
>THAT big yet.)
>
>The EDD standard is available from:
>
>    http://www.phoenix.com/products/specs.html

>On 24 Apr 2000 13:57:43 -0400, [EMAIL PROTECTED] (John Brock) wrote:
>
>>I assume that you are talking about the Int 13 Extensions to the EIDE
>>interface.  Is that correct?  If so, what about SCSI?  My Adaptec SCSI
>>card has two modes; in one mode 1024cyl = 1GB, in the other mode
>>1024cyl = 7.8GB (or something like that).  Since SCSI is not as
>>standardized as EIDE, and every vendor seems to do things in a slightly
>>different and incompatible way, is there any hope that LILO can be
>>patched to boot from above the 1024th cylinder on a SCSI disk?  Or have
>>I totally misunderstood everything?  :-)

>>In article <[EMAIL PROTECTED]>,
>>Joerg Baumann  <[EMAIL PROTECTED]> wrote:
>>>I have written a patch for lilo.
>>>Now you can access up to 2 Terrabytes of harddisk with lilo, if your 
>>>BIOS has EDD or EBD extensions (should be present in recent BIOSes since
>>>1998)
>>>Please, test it and report bugs to me.
>>>You can find the files under
>>>http://www.rommel.stw.uni-erlangen.de/~jgbauman/lilo/ 
-- 
John Brock
[EMAIL PROTECTED]

------------------------------

From: Roman Sulzhyk <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.sys.sun.misc,comp.sys.sun.admin,comp.sys.sun.apps
Subject: Sun disk writes are very slow, looking for explanation
Date: Mon, 24 Apr 2000 20:05:56 -0500


        Hello:

        I am a senior engineer for Starmedia Networks, an internet portal 
company.  Recently, we discovered that some an application we were writing 
was running marginally slower on Sun than it was on Linux.  Upon investigation, 
we discovered that the bottleneck appears to be in Sun disk writes - 
much to our surprise, some operations take almost 70ms to complete, and this
behaviour is consistent on all of the Sun boxes we could get our hands on! In
our application, we use unix fs for caching and hence do heavy writes, renames
and unlinks on files. 

        The code of the benchmarking program which exposes this 'problem' (I 
put quotes around it because we don't rule out that this is a feature) is at 
the end of the message. The operations we are testing are:

1.      Regular system call write 

        fd = open("testfile",O_CREAT|O_WRONLY|O_TRUNC,0777);
        write(fd, buf, BUFSIZE);
        close(fd);

2.      libstdio write test

        fp = fopen("testfile", "wb");
        fwrite(buf, BUFSIZE, 1, fp);
        fclose(fp);

3.      rename test

        rename ( "testfile", "otestfile" );

4.      link test

        link("testfile", "otestfile");
        unlink("testfile");

        Now for the fun part. This is the result of running the benchmark on
Linux:

[roman@cccp ~]$ uname -a
Linux cccp 2.2.13 #6 Wed Nov 10 15:17:44 EST 1999 i686 unknown
[roman@cccp ~]$ df .
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/sda5              2035575    535357   1394996  28% /
[roman@cccp ~]$ gcc bench.c 
[roman@cccp ~]$ ./a.out 
Test: os write test  total: 0.004902  each: 0.000049
Test: stdio lib write test  total: 0.008182  each: 0.000082
Test: rename test total: 0.006533  each: 0.000065
Test: link test total: 0.005184  each: 0.000052

        These are the results on a Ultra 2 Sun box:

[roman@support ~]$ uname -a
SunOS support 5.7 Generic_106541-06 sun4u sparc SUNW,Ultra-2
[roman@support ~]$ df .
/export/home       (/dev/dsk/c0t0d0s7 ):  298912 blocks   192172 files
[roman@support ~]$ gcc bench.c 
[roman@support ~]$ ./a.out 
Test: os write test  total: 0.843483  each: 0.008435
Test: stdio lib write test  total: 1.060472  each: 0.010605
Test: rename test total: 2.500455  each: 0.025005
Test: link test total: 2.503767  each: 0.025038

        As you can see, the Sun's fs appears to be a couple of orders of
magnitude slower than the Linux one. The question is, why the hell is it so 
slow in writing stuff to disk - it should all happen in memory buffers, and 
be flushed when you do sync() or fsync() or kernel dumps dirty buffers to 
disk. We are totally stumped as to why this is happening, and since we don't 
have SunOS expertise have decided to post the question here. 

        We would like to get a qualified answer to this particular problem 
in order to make sure that this doesn't turn out just some misconfiguration 
quirk. However, if this turns out a geniune problem with the SunOS, it will
give us leverage to push for replacement of Sun servers with Linux boxen. 

        You can post here or email me directly at [EMAIL PROTECTED] (please
remove underscores, spam protection) if you have any questions / suggestions.

        Thank you very much!

        Roman

        PS The attachments. Here's the 'truss -D ' output on the Sun of the 
shorter version of the test (only 2 passes of each test), and then the code 
of the program.

==== Truss output, 2 tests =====
 0.0000 execve("a.out", 0xFFBEFC2C, 0xFFBEFC34)  argc = 1
 0.0025 open("/dev/zero", O_RDONLY)                     = 3
 0.0004 mmap(0x00000000, 8192, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0xFF3A0000
 0.0003 stat("a.out", 0xFFBEF920)                       = 0
 0.0003 open("./libc.so.1", O_RDONLY)                   Err#2 ENOENT
 0.0003 open("/opt/oracle/product/8.0.6/lib/libc.so.1", O_RDONLY) Err#2 ENOENT
 0.0003 open("/usr/lib/libc.so.1", O_RDONLY)            = 4
 0.0002 fstat(4, 0xFFBEF6DC)                            = 0
 0.0002 mmap(0x00000000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0xFF390000
 0.0002 mmap(0x00000000, 770048, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0xFF280000
 0.0002 munmap(0xFF324000, 57344)                       = 0
 0.0002 mmap(0xFF332000, 26732, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 
4, 663552) = 0xFF332000
 0.0003 mmap(0xFF33A000, 448, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 
3, 0) = 0xFF33A000
 0.0004 close(4)                                        = 0
 0.0003 open("./libdl.so.1", O_RDONLY)                  Err#2 ENOENT
 0.0004 open("/opt/oracle/product/8.0.6/lib/libdl.so.1", O_RDONLY) Err#2 ENOENT
 0.0004 open("/usr/lib/libdl.so.1", O_RDONLY)           = 4
 0.0002 fstat(4, 0xFFBEF6DC)                            = 0
 0.0002 mmap(0xFF390000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4, 0) = 
0xFF390000
 0.0002 close(4)                                        = 0
 0.0002 open("/usr/platform/SUNW,Ultra-2/lib/libc_psr.so.1", O_RDONLY) = 4
 0.0003 fstat(4, 0xFFBEF54C)                            = 0
 0.0002 mmap(0x00000000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0xFF380000
 0.0002 mmap(0x00000000, 16384, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0xFF370000
 0.0002 close(4)                                        = 0
 0.0013 close(3)                                        = 0
 0.0002 munmap(0xFF380000, 8192)                        = 0
 0.0183 open("testfile", O_WRONLY|O_CREAT|O_TRUNC, 0777) = 3
 0.0005 write(3, "\001020304050607\b\t\n\v".., 4096)    = 4096
 0.0002 close(3)                                        = 0
 0.0106 open("testfile", O_WRONLY|O_CREAT|O_TRUNC, 0777) = 3
 0.0003 write(3, "\001020304050607\b\t\n\v".., 4096)    = 4096
 0.0002 close(3)                                        = 0
 0.0006 ioctl(1, TCGETA, 0xFFBEEB1C)                    = 0
 0.0005 write(1, " T e s t :   o s   w r i".., 53)      = 53
 0.0067 open("testfile", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3
 0.0003 fstat64(3, 0xFFBEF8A0)                          = 0
 0.0001 brk(0x000224A8)                                 = 0
 0.0002 brk(0x000264A8)                                 = 0
 0.0003 ioctl(3, TCGETA, 0xFFBEF82C)                    Err#25 ENOTTY
 0.0003 write(3, "\001020304050607\b\t\n\v".., 4096)    = 4096
 0.0003 close(3)                                        = 0
 0.0068 open("testfile", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3
 0.0004 fstat64(3, 0xFFBEF8A0)                          = 0
 0.0001 ioctl(3, TCGETA, 0xFFBEF82C)                    Err#25 ENOTTY
 0.0003 write(3, "\001020304050607\b\t\n\v".., 4096)    = 4096
 0.0003 close(3)                                        = 0
 0.0002 write(1, " T e s t :   s t d i o  ".., 60)      = 60
 0.0371 rename("testfile", "otestfile")                 = 0
 0.0248 rename("otestfile", "testfile")                 = 0
 0.0004 write(1, " T e s t :   r e n a m e".., 50)      = 50
 0.0328 link("testfile", "otestfile")                   = 0
 0.0083 unlink("testfile")                              = 0
 0.0166 link("otestfile", "testfile")                   = 0
 0.0083 unlink("otestfile")                             = 0
 0.0003 write(1, " T e s t :   l i n k   t".., 48)      = 48
 0.0193 unlink("testfile")                              = 0
 0.0003 llseek(0, 0, SEEK_CUR)                          = 90175
 0.0002 _exit(0)
==== bench.c code          =====
#include <sys/stat.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/time.h>

#define NUMTEST 100
#define BUFSIZE 4096

char buf[BUFSIZE];

struct timeval start;
struct timeval end;

void printResult(const char*str, struct timeval s, struct timeval e)
{
    long secdiff, usecdiff;
    double d;
    secdiff = e.tv_sec - s.tv_sec;
    usecdiff = e.tv_usec - s.tv_usec;

    if (usecdiff < 0)
    {
        usecdiff += 1000000;
        secdiff--;
    }
    d = secdiff + (usecdiff / 1000000.0);
    d /= NUMTEST;
    printf("Test: %s total: %d.%06d  each: %f\n", str, secdiff, usecdiff, d);
}

void benchWrites()
{
    int fd;
    int i;
    
    gettimeofday(&start, NULL);
    for (i=0; i<NUMTEST; i++)
    {
        fd = open("testfile",O_CREAT|O_WRONLY|O_TRUNC,0777);
        write(fd, buf, BUFSIZE);
        close(fd);
    }
    gettimeofday(&end, NULL);
    printResult("os write test ", start, end);
}

void benchFWrites()
{
    FILE *fp;
    int i;
    
    gettimeofday(&start, NULL);
    for (i=0; i<NUMTEST; i++)
    {
        fp = fopen("testfile", "wb");
        fwrite(buf, BUFSIZE, 1, fp);
        fclose(fp);
    }
    gettimeofday(&end, NULL);
    printResult("stdio lib write test ", start, end);
}


/*void benchSWrites()
{
    int fd;
    int i;
    struct stat64 s64;
    
    gettimeofday(&start, NULL);
    for (i=0; i<NUMTEST; i++)
    {
        fd = open("testfile",O_CREAT|O_WRONLY|O_TRUNC, 0777);
        fstat64(fd, &s64);        
        write(fd, (const void*)&buf, BUFSIZE);
        close(fd);
    }
    gettimeofday(&end, NULL);
    printResult("write test with fstat64", start, end);
}
*/

void benchRename()
{
    int fd;
    int i;
    
    gettimeofday(&start, NULL);
    for (i=0; i<(NUMTEST/2); i++)
    {
        rename("testfile", "otestfile");
        rename("otestfile", "testfile");
    }
    gettimeofday(&end, NULL);
    printResult("rename test", start, end);
}

void benchLinks()
{
    int fd;
    int i;
    
    gettimeofday(&start, NULL);
    for (i=0; i<(NUMTEST/2); i++)
    {
        link("testfile", "otestfile");
        unlink("testfile");
        link("otestfile", "testfile");
        unlink("otestfile");
    }
    gettimeofday(&end, NULL);
    printResult("link test", start, end);
}


int main()
{
    int i;

    for (i=0; i<BUFSIZE; i++)
        buf[i] = i%256;
    benchWrites();
    benchFWrites();
    benchRename();
    benchLinks();
    unlink("testfile");
/*    benchSWrites();
    unlink("testfile");*/
    return 0;
}
================================


------------------------------

From: Jan Schaumann <[EMAIL PROTECTED]>
Subject: Re: pine and roadrunner
Date: Mon, 24 Apr 2000 20:09:54 -0400

[EMAIL PROTECTED] wrote:
> 
> I am setting up pine (because I am used to it and not interested
> in X*) and I am running into an issue with the From: field it
> creates.  Pine insists on using the local linux box's username in
> the From: field and I need it to use the RR name since, otherwise,
> the address it shows recipients is altogether incorrect.
> 
> I am using roadrunner as the isp and my username for roadrunner
> differs from the username (LOGNAME, &c) on my local linux box.  I
> really don't want to have to change my local username to match
> that of RR's arbitrarily created username and I would like to know
> how to force pine to use the correct name since I cannot seem to
> find a Reply-To: entry for pine.
> 

Reply-to can be set up via "Setup->Config", but pine can also use
another username (and domain) - check your ~/.pinerc file...

-Jan

-- 
Jan Schaumann
http://jschauma-0.dsl.speakeasy.net

The best defense against logic is ignorance.

------------------------------

From: "Lam Dang" <[EMAIL PROTECTED]>
Subject: Re: [HELP] How to describe audio/x-playlist
Date: 24 Apr 2000 20:00:07 -0400

"Lam Dang" <[EMAIL PROTECTED]> writes:

> I've just installed the Kmp3 package.
> When I log in, KDE complains about not
> finding the MIME type for
> audio/x-playlist.  Otherwise the package
> works as expected.
> 
> How do I add audio/x-playlist to my
> ~/.mime.types?  Or am I missing
> something else?  I'm running RedHat
> 6.2.

I found it.  I need the file
/usr/share/mimelnk/audio/x-playlist.kdelnk

-- 
Lam Dang
dangit AT ix DOT netcom DOT com

------------------------------

From: [EMAIL PROTECTED] (David Efflandt)
Crossposted-To: 
comp.os.linux.networking,com.os.linux.redhat,comp.os.linux.setup,nf.comp.linux,alt.os.linux
Subject: Re: **** USER PERMISSIONS ****
Date: 25 Apr 2000 00:28:38 GMT
Reply-To: [EMAIL PROTECTED]

On Mon, 24 Apr 2000 03:53:21 -0230, Tux <[EMAIL PROTECTED]> wrote:
>Hi there,
>
>Is there any way to set user permissions in linux as you would in
>another NOS like NT or Novell...??   What I am referring to is the
>ability to assign individual users with the access to perform some,
>most, or all of the actions of a root or su user....  For instance,
>would I be able to assign access rights to an ordinary user so they
>would be able to shutdown the system, edit system files, or something
>similar...??? *s*

What do you think group permissions are for.  If a certain group of people
should have access to a certain file or program, you can put them in a
group for that (/etc/group) and then chgrp the file to that group with
appropriate group permissions.  You might want to take a look at 'man
chown', 'man chgrp', 'man chmod'.

The 'other' part of file permissions are for users who are not in the
group set for the program or file.  So if you want to limit something to
the group don't give any permission to others (750, 660, etc.)

-- 
David Efflandt  [EMAIL PROTECTED]  http://www.de-srv.com/
http://www.autox.chicago.il.us/  http://www.berniesfloral.net/
http://hammer.prohosting.com/~cgi-wiz/  http://cgi-help.virtualave.net/


------------------------------

From: Russ Allbery <[EMAIL PROTECTED]>
Crossposted-To: news.software.nntp,news.software.nn
Subject: Re: News server recommendation
Date: 24 Apr 2000 17:27:35 -0700

In news.software.nntp, bill davidsen <[EMAIL PROTECTED]> writes:
> David Jacobson <[EMAIL PROTECTED]> wrote:

> | 3. A way to password protect either the whole server, or each newsgroup, or
> | the web page interface.

> You can do this with INN 2.3, it's moderately ugly if you really want to
> do each of 40k newsgroups.

It's not bad if you use the Perl authentication hooks instead of
readers.conf, and for that particular application I'd recommend it.  You'd
have to write a bit of code, but you could then use an external database
or the like.

> | 4 (nice extra). It would be nice if the user authentication mechanism (web
> | page or built-in to NNTP server) could authenticate users over an LDAP
> | interface against a user list that was on a separate LDAP server.

> You can write authentication modules in your favorite language with INN
> 2.3. There may be the right thing there, I don't remember.

It should let you do this with some programming, yeah.  At some point,
either I'll write an LDAP authenticator or someone else will and
contribute it, but there isn't one in 2.3 yet.

-- 
Russ Allbery ([EMAIL PROTECTED])             <http://www.eyrie.org/~eagle/>

------------------------------

From: Leonard Evens <[EMAIL PROTECTED]>
Subject: Re: Serial port
Date: Mon, 24 Apr 2000 20:22:13 -0500

Christof Schadt wrote:
> 
> Does anybody know a way to figure out the available serial ports on my PC. I
> don't mean 'ls /dev/ttyS*' or something like that.
> Normally you have ttyS0 and ttyS1 but I have to find out if they are really
> there and how they are called.
> 
> Thank you a lot!
> 
> Christof

Look in the messages from the boot sequence.   They should be
listed where the kernel finds them.

-- 

Leonard Evens      [EMAIL PROTECTED]      847-491-5537
Dept. of Mathematics, Northwestern Univ., Evanston, IL 60208

------------------------------


** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: [EMAIL PROTECTED]

You can send mail to the entire list (and comp.os.linux.misc) via:

    Internet: [EMAIL PROTECTED]

Linux may be obtained via one of these FTP sites:
    ftp.funet.fi                                pub/Linux
    tsx-11.mit.edu                              pub/linux
    sunsite.unc.edu                             pub/Linux

End of Linux-Misc Digest
******************************

Reply via email to