Projects

Ticket #20 (new defect report)

Opened 3 years ago

Last modified 11 months ago

required file not included in source-code tar

Reported by: ben_humpert@… Owned by:
Priority: blocker Version: All platforms
Keywords: file missing membership.h Cc: mo@…

Description

after fixing most of the errors (see http://dss.macosforge.org/trac/ticket/19) a file is missing which is NOT included in the source code tar-file. Also the file is NOT included in any package of debian (and i guess its not included in any package of any other linux distri)

the missing file is called 'membership.h'

Its included by APICommonCode/QTAccessFile.cpp in line 49

Change History

Changed 3 years ago by ben_humpert@…

The file 'membership.h' is also included by the folling two files.

APIModules/QTSSDSAuthModule/QTSSDSAuthModule.cpp APIModules/QTSSDSAuthModule/DSAccessChecker.cpp

please attach the file if you have it!

Changed 3 years ago by mo@…

membership.h is a Mac OS X-only file. Modify APICommonCode/QTAccessFile.cpp to not include it, and replace DSAccessFile::CheckGroupMembership to read as follows:

bool DSAccessFile::CheckGroupMembership(const char* inUsername, const char* inGroupName)
{   
        // In Tiger, group membership is painfully simple: we ask memberd for it!
        struct passwd   *user           = NULL;
        struct group    *group          = NULL;
        size_t          c;
        
        // Look up the user using the POSIX APIs: only care about the UID.
        user = getpwnam(inUsername);
        if ( user == NULL )
                return false;
        // Look up the group using the POSIX APIs: only care about the GID.
        group = getgrnam(inGroupName);
        endgrent();
        if ( group == NULL )
                return false;
        for ( c = 0; group->gr_mem[c]; c++ )
                if ( 0 == strcmp(group->gr_mem[c], inUsername) )
                        return true;
        return false;
}

Remove references to QTSSDSAuthModule from Server.tproj/Makefile.POSIX and Server.tproj/QTSServer.cpp (that is, remove the #include, the 'new QTSSModule', the SetupModule and the AddModule calls.

Changed 3 years ago by mo@…

  • cc mo@… added

Cc Me!

Note: See TracTickets for help on using tickets.