Hallo,

ich muss das Thema nochmal hochholen. Da ich erst jetzt wieder mal dazugekommen bin da weiterzumachen.

Über was ich jetzt stolpere ist, mein "entry". Wenn ich das Programm laufen lasse mit der Konstanten CONST im Pfadnamen (wie im Original) funktioniert es.
Wenn ich das ganze dahin ändere, das ich den Pfadnamen oder einen Teil davon übergeben will klappts nicht mehr.
Ich hab dann in der Variablen "dh" imm "*Null" stehen, anstatt wie im Orginal den Pfadnamen.
Kann mir da jemand einen Tip geben, woran's da bei mir krankt?

Code:
 H DftActGrp(*No) Option(*SrcStmt : *NoDebugIO)

     FDIROUTPUT O    E             DISK

     D PATHTOLIST      C                   CONST('/home/SVN/src_diso1/trunk/+
     D                                            LSRCELNS_SOURCE/')
     D PFADNAME        S            100A   INZ VARYING
     D*
     D* Directory Entry Structure (dirent)
     D*
     D*
     D p_dirent        s               *
     D dirent          ds                  based(p_dirent)
     D   d_reserv1                   16A
     D   d_reserv2                   10U 0
     D   d_fileno                    10U 0
     D   d_reclen                    10U 0
     D   d_reserv3                   10I 0
     D   d_reserv4                    8A
     D   d_nlsinfo                   12A
     D     nls_ccsid                 10I 0 OVERLAY(d_nlsinfo:1)
     D     nls_cntry                  2A   OVERLAY(d_nlsinfo:5)
     D     nls_lang                   3A   OVERLAY(d_nlsinfo:7)
     D     nls_reserv                 3A   OVERLAY(d_nlsinfo:10)
     D   d_namelen                   10U 0
     D   d_name                     640A
     D*------------------------------------------------------------
     D* Öffnen Directory
     D*
     D* DIR *opendir(const char *dirname)
     D*
     D*------------------------------------------------------------
     D opendir         PR              *   EXTPROC('opendir')
     D  dirname                        *   VALUE

     D*------------------------------------------------------------
     D* Read Directory Entry
     D*
     D* struct dirent *readdir(DIR *dirp)
     D*
     D*------------------------------------------------------------
     D readdir         PR              *   EXTPROC('readdir')
     D  dirp                           *   VALUE


     D* a few local variables...
     D dh              S               *
     D PathName        S            256A
     D Name            S            256A
     D PATH            S            256A

     C     *ENTRY        PLIST
     C                   PARM                    P_PFADNAME       25

     C* Step1: Öffnen Directory.
     c**                 eval      Pathname = PATHTOLIST + x'00'
     c                   eval      PFADNAME = pathtolist + P_PFADNAME
     c                   eval      Pathname = PFADNAME + x'60'
     C                   eval      dh = opendir(%addr(PathName))
     C                   if        dh = *NULL
     c                   eval      Msg = 'Cant open directory'
     c                   dsply                   Msg              50
     c                   eval      *INLR = *ON
     c                   Return
     c                   endif