linux-mips
[Top] [All Lists]

readdir() problems

To: linux-mips@linux-mips.org
Subject: readdir() problems
From: "Mark and Janice Juszczec" <juszczec@hotmail.com>
Date: Fri, 30 Jan 2004 03:02:09 +0000
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org

Hi folks

I'm running on a Helio pda, r3912 chip, little endian. I've used crosstool to create a cross compiler with

gcc 3.2.3
glibc 2.2.3

When I run the following code (linked static or dynamic):

#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <errno.h>

main(int argc, char **argv){
       DIR* dir;
       struct dirent* entry;
       int len;
       int hlen;
       char* name;
       char* buf;

       printf("in dirtest main()\n");
       fprintf(stderr,"in dirtest main()\n");
       dir = opendir("/bin");
       if (dir == 0) {
         fprintf(stderr,"opendir returned 0\n");
       }
       else{
               fprintf(stderr,"opendir returned dir=%x\n",dir);
       }

       entry=readdir(dir);
       fprintf(stderr,"after readdir\n");
       printf("errno=%d\n",errno);
       if (entry != 0){
         fprintf(stderr,"entry=%x\n",entry);
         name = entry->d_name;
         fprintf(stderr,"name=%s\n",name);
         while ((entry = readdir(dir)) != 0) {
               name = entry->d_name;
               fprintf(stderr,"name=%s\n",name);
         }
       }
       else{
         fprintf(stderr,"readdir failed and you can't reference entry\n");
       }

       closedir(dir);

}

I get the following output:

/bin # ./dirtest
in dirtest main()
opendir returned dir=100000c8

I can only assume its crashing after entry=readdir(dir)
Does anyone know of any readdir() problems in linux-mips world?

Mark

_________________________________________________________________
Learn how to choose, serve, and enjoy wine at Wine @ MSN. http://wine.msn.com/


<Prev in Thread] Current Thread [Next in Thread>