1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
#include "FdHelper.h"
#include <helpersupport.h>
#include <QCoreApplication>
#include <QDBusUnixFileDescriptor>
#include <QDebug>
#include <QFile>
#include <QTimer>
#include <unistd.h>
ActionReply FdHelper::standardaction(QVariantMap args)
{
QDBusUnixFileDescriptor tempFileFd = args[QStringLiteral("tempFileDescriptor")].value<QDBusUnixFileDescriptor>();
QFile tempFile;
args.remove(QStringLiteral("tempFileDescriptor"));
if (!tempFileFd.isValid()) {
return ActionReply::HelperErrorReply();
}
if (!tempFile.open(tempFileFd.fileDescriptor(), QIODevice::ReadOnly)) {
return ActionReply::HelperErrorReply();
}
QByteArray blob = tempFile.readAll();
QVariantMap arguments;
QDataStream s(&blob, QIODevice::ReadOnly);
s >> arguments;
if (args == arguments) {
return ActionReply::SuccessReply();
}
return ActionReply::HelperErrorReply();
}
KAUTH_HELPER_MAIN("org.kde.kf6auth.autotest", FdHelper)
#include "moc_FdHelper.cpp"
|