From f4162d2283ebf0327645e0ac66b539cf87565d0b Mon Sep 17 00:00:00 2001 From: dwmw2 Date: Thu, 19 Sep 2002 20:44:40 +0000 Subject: Initial import of half-finished ssh-agent key management tool. --- diff --git a/noncore/settings/sshkeys/main.cpp b/noncore/settings/sshkeys/main.cpp new file mode 100644 index 0000000..37be8bf --- a/dev/null +++ b/noncore/settings/sshkeys/main.cpp @@ -0,0 +1,14 @@ + +#include +#include "sshkeys.h" + +int main(int argc, char *argv[]) +{ + QPEApplication a(argc, argv); + SSHKeysApp app; + + a.showMainWidget(&app); + + return a.exec(); +} + diff --git a/noncore/settings/sshkeys/opie-sshkeys.control b/noncore/settings/sshkeys/opie-sshkeys.control new file mode 100644 index 0000000..1f4b669 --- a/dev/null +++ b/noncore/settings/sshkeys/opie-sshkeys.control @@ -0,0 +1,8 @@ +Files: bin/sshkeys +Priority: optional +Section: opie/settings +Maintainer: David Woodhouse +Architecture: arm +Version: $QPE_VERSION-$SUB_VERSION +Depends: opie-base ($QPE_VERSION), ssh, opie-sh-ssh-askpass +Description: Utility for managing ssh-agent keys. diff --git a/noncore/settings/sshkeys/sshkeys.cpp b/noncore/settings/sshkeys/sshkeys.cpp new file mode 100644 index 0000000..08ce18d --- a/dev/null +++ b/noncore/settings/sshkeys/sshkeys.cpp @@ -0,0 +1,58 @@ +#include "sshkeys.h" + +#include +#include +#include +#include +#include + +SSHKeysApp::SSHKeysApp( QWidget* parent, const char* name, WFlags fl ) + : SSHKeysBase( parent, name, fl ) +{ + + connect(AddButton, SIGNAL(clicked()), this, SLOT(doAddButton())); + connect(RefreshListButton, SIGNAL(clicked()), this, SLOT(doRefreshListButton())); + connect(RemoveAllButton, SIGNAL(clicked()), this, SLOT(doRemoveAllButton())); + + KeyList->horizontalHeader()->setLabel(0, tr("Key")); + KeyList->horizontalHeader()->setLabel(1, tr("Size")); + KeyList->horizontalHeader()->setLabel(2, tr("Fingerprint")); + + doRefreshListButton(); +} + +SSHKeysApp::~SSHKeysApp() +{ +} + +void SSHKeysApp::doRefreshListButton() +{ + OProcess sshadd_process; + + connect(&sshadd_process, SIGNAL(receivedStdout(OProcess*,char*,int)), + this, SLOT(get_list_keys_output(OProcess*,char*,int))); + + TextOutput->append("Running ssh-add -l\n"); + sshadd_process << "ssh-add" << "-l"; + bool ret = sshadd_process.start(OProcess::Block, OProcess::AllOutput); + if (!ret) + TextOutput->append("Error running ssh-add\n"); + KeyList->setText(0, 0, "dwmw2@infradead.org (RSA v1)"); + KeyList->setText(0, 1, "1024"); + KeyList->setText(0, 2, "78:24:04:95:40:fc:b2:80:9b:94:d5:ae:19:56:19:65"); +} + +void SSHKeysApp::get_list_keys_output(OProcess *proc, char *buffer, int buflen) +{ + TextOutput->append(buffer); +} + + +void SSHKeysApp::doAddButton() +{ + +} +void SSHKeysApp::doRemoveAllButton() +{ + +} diff --git a/noncore/settings/sshkeys/sshkeys.h b/noncore/settings/sshkeys/sshkeys.h new file mode 100644 index 0000000..4a9f2fe --- a/dev/null +++ b/noncore/settings/sshkeys/sshkeys.h @@ -0,0 +1,27 @@ + +#ifndef SSHKEYSAPP_H +#define SSHKEYSAPP_H + +#include "sshkeysbase.h" + +class OProcess; + +class SSHKeysApp : public SSHKeysBase +{ + Q_OBJECT + + public: + SSHKeysApp( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); + ~SSHKeysApp(); + + private: + void sshadd(char **args); + + private slots: + void doAddButton(); + void doRefreshListButton(); + void doRemoveAllButton(); + void get_list_keys_output(OProcess *proc, char *buffer, int buflen); +}; +#endif + diff --git a/noncore/settings/sshkeys/sshkeys.pro b/noncore/settings/sshkeys/sshkeys.pro new file mode 100644 index 0000000..33155e3 --- a/dev/null +++ b/noncore/settings/sshkeys/sshkeys.pro @@ -0,0 +1,11 @@ +TEMPLATE = app +CONFIG += qt warn_on release +HEADERS = sshkeys.h +SOURCES = main.cpp sshkeys.cpp +TARGET = sshkeys +INTERFACES = sshkeysbase.ui +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include +LIBS += -lqpe -lopie +DESTDIR = $(OPIEDIR)/bin + diff --git a/noncore/settings/sshkeys/sshkeysbase.ui b/noncore/settings/sshkeys/sshkeysbase.ui new file mode 100644 index 0000000..dc1df28 --- a/dev/null +++ b/noncore/settings/sshkeys/sshkeysbase.ui @@ -0,0 +1,143 @@ + +SSHKeysBase + + QWidget + + name + SSHKeysBase + + + geometry + + 0 + 0 + 736 + 446 + + + + caption + SSH Keys + + + + margin + 11 + + + spacing + 6 + + + QComboBox + + name + KeyFileName + + + sizePolicy + + 7 + 0 + + + + editable + true + + + + QPushButton + + name + AddButton + + + sizePolicy + + 1 + 0 + + + + text + Add Keys: + + + + QPushButton + + name + RefreshListButton + + + text + Refresh + + + + QPushButton + + name + RemoveAllButton + + + enabled + false + + + text + Clear Keys + + + + QMultiLineEdit + + name + TextOutput + + + sizePolicy + + 7 + 1 + + + + readOnly + true + + + + QTable + + name + KeyList + + + font + + adobe-helvetica + 9 + + + + resizePolicy + AutoOneFit + + + numRows + 1 + + + numCols + 3 + + + showGrid + false + + + + + -- cgit v0.9.0.2