32
32
#ifndef KRPERMHANDLER_H
33
33
#define KRPERMHANDLER_H
36
#include <qfileinfo.h>
35
#include <QtCore/QString>
36
#include <QtCore/QFileInfo>
37
37
#include <sys/types.h>
38
#include <QtCore/QHash>
39
39
#include <kio/global.h>
42
42
#define UNKNOWN_PERM 1
43
43
#define ALLOWED_PERM 2
52
static gid_t group2gid(QString group);
53
static uid_t user2uid (QString user);
55
static QString gid2group(gid_t groupId);
56
static QString uid2user (uid_t userId);
58
static char writeable (QString perm, gid_t gid, uid_t uid, int rwx=-1);
59
static char readable (QString perm, gid_t gid, uid_t uid, int rwx=-1);
60
static char executable(QString perm, gid_t gid, uid_t uid, int rwx=-1);
62
static bool fileWriteable (QString localFile);
63
static bool fileReadable (QString localFile);
64
static bool fileExecutable(QString localFile);
66
static char ftpWriteable ( QString fileOwner, QString userName, QString perm );
67
static char ftpReadable ( QString fileOwner, QString userName, QString perm );
68
static char ftpExecutable( QString fileOwner, QString userName, QString perm );
70
static bool dirExist (QString path);
71
static bool fileExist(QString fullPath);
72
static bool fileExist(QString Path, QString name);
74
static QString mode2QString(mode_t m);
75
static QString parseSize(KIO::filesize_t val);
76
static QString date2qstring(QString date);
77
static time_t QString2time(QString date);
53
static gid_t group2gid(QString group);
54
static uid_t user2uid(QString user);
56
static QString gid2group(gid_t groupId);
57
static QString uid2user(uid_t userId);
59
static char writeable(QString perm, gid_t gid, uid_t uid, int rwx = -1);
60
static char readable(QString perm, gid_t gid, uid_t uid, int rwx = -1);
61
static char executable(QString perm, gid_t gid, uid_t uid, int rwx = -1);
63
static bool fileWriteable(QString localFile);
64
static bool fileReadable(QString localFile);
65
static bool fileExecutable(QString localFile);
67
static char ftpWriteable(QString fileOwner, QString userName, QString perm);
68
static char ftpReadable(QString fileOwner, QString userName, QString perm);
69
static char ftpExecutable(QString fileOwner, QString userName, QString perm);
71
static bool dirExist(QString path);
72
static bool fileExist(QString fullPath);
73
static bool fileExist(QString Path, QString name);
75
static QString mode2QString(mode_t m);
76
static QString parseSize(KIO::filesize_t val);
77
static QString date2qstring(QString date);
78
static time_t QString2time(QString date);
80
// cache for passwd and group entries
81
static QHash<QString, uid_t> *passwdCache;
82
static QHash<QString, gid_t> *groupCache;
83
static QHash<int, char> *currentGroups;
84
static QHash<int, QString> *uidCache;
85
static QHash<int, QString> *gidCache;
81
// cache for passwd and group entries
82
static QHash<QString, uid_t> *passwdCache;
83
static QHash<QString, gid_t> *groupCache;
84
static QHash<int, char> *currentGroups;
85
static QHash<int, QString> *uidCache;
86
static QHash<int, QString> *gidCache;