\hypertarget{classGpgFrontend_1_1GpgKeyImportExporter}{}\doxysection{Gpg\+Frontend\+::Gpg\+Key\+Import\+Exporter Class Reference} \label{classGpgFrontend_1_1GpgKeyImportExporter}\index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} Inheritance diagram for Gpg\+Frontend\+::Gpg\+Key\+Import\+Exporter\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[height=550pt]{classGpgFrontend_1_1GpgKeyImportExporter__inherit__graph} \end{center} \end{figure} Collaboration diagram for Gpg\+Frontend\+::Gpg\+Key\+Import\+Exporter\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classGpgFrontend_1_1GpgKeyImportExporter__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_a0eede7c782d17b32d6c1f30cd8496561}{Gpg\+Key\+Import\+Exporter}} (int channel=\mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a50e2b3794d6553f4231eaec72d9d0a50}{Singleton\+Function\+Object\+::\+Get\+Default\+Channel}}()) \begin{DoxyCompactList}\small\item\em Construct a new Gpg Key Import Exporter object. \end{DoxyCompactList}\item \mbox{\hyperlink{classGpgFrontend_1_1GpgImportInformation}{Gpg\+Import\+Information}} \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_ab7a9be5283047695cd47562775adf79d}{Import\+Key}} (Std\+Bype\+Array\+Ptr in\+Buffer) \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_aa9fbda8f6c3fa36a503075d7a124fa3f}{Export\+Keys}} (Key\+Id\+Args\+List\+Ptr \&uid\+\_\+list, Byte\+Array\+Ptr \&out\+\_\+buffer, bool secret=false) const \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_a8157afa844c8bf964ce83f5de71efc5a}{Export\+Keys}} (const Key\+Args\+List \&keys, Byte\+Array\+Ptr \&out\+Buffer, bool secret=false) const \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_ae7d61a8c39ef7e7f1562895dbf108e68}{Export\+All\+Keys}} (Key\+Id\+Args\+List\+Ptr \&uid\+\_\+list, Byte\+Array\+Ptr \&out\+\_\+buffer, bool secret) const \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_a51cb18aa7302d7a48ccd1ee17f060391}{Export\+Key}} (const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&key, Byte\+Array\+Ptr \&out\+\_\+buffer) const \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_aa0a73314ef94f397e2ef53d40abc9731}{Export\+Key\+Open\+SSH}} (const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&key, Byte\+Array\+Ptr \&out\+\_\+buffer) const \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_a6a5e8d642ac5a3e98799af6495ef590b}{Export\+Secret\+Key}} (const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&key, Byte\+Array\+Ptr \&out\+Buffer) const \item bool \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyImportExporter_abf7c0442549ae8602e1249cdf0da55df}{Export\+Secret\+Key\+Shortest}} (const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&key, Byte\+Array\+Ptr \&out\+Buffer) const \end{DoxyCompactItemize} \doxysubsection*{Private Attributes} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classGpgFrontend_1_1GpgContext}{Gpg\+Context}} \& {\bfseries ctx\+\_\+} \end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_a0eede7c782d17b32d6c1f30cd8496561}\label{classGpgFrontend_1_1GpgKeyImportExporter_a0eede7c782d17b32d6c1f30cd8496561}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!GpgKeyImportExporter@{GpgKeyImportExporter}} \index{GpgKeyImportExporter@{GpgKeyImportExporter}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{GpgKeyImportExporter()}{GpgKeyImportExporter()}} {\footnotesize\ttfamily Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Gpg\+Key\+Import\+Exporter (\begin{DoxyParamCaption}\item[{int}]{channel = {\ttfamily \mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a50e2b3794d6553f4231eaec72d9d0a50}{Singleton\+Function\+Object\+::\+Get\+Default\+Channel}}()} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [explicit]}} Construct a new Gpg Key Import Exporter object. \begin{DoxyParams}{Parameters} {\em channel} & Copyright (C) 2021 Saturneric\\ \hline \end{DoxyParams} This file is part of \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}}. \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}} is free software\+: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}} is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}}. If not, see \href{https://www.gnu.org/licenses/}{\texttt{ https\+://www.\+gnu.\+org/licenses/}}. The initial version of the source code is inherited from the gpg4usb project, which is under GPL-\/3.\+0-\/or-\/later. All the source code of \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}} was modified and released by Saturneric\href{mailto:eric@bktus.com}{\texttt{ eric@bktus.\+com}} starting on May 12, 2021. SPDX-\/\+License-\/\+Identifier\+: GPL-\/3.\+0-\/or-\/later \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_ae7d61a8c39ef7e7f1562895dbf108e68}\label{classGpgFrontend_1_1GpgKeyImportExporter_ae7d61a8c39ef7e7f1562895dbf108e68}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportAllKeys@{ExportAllKeys}} \index{ExportAllKeys@{ExportAllKeys}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportAllKeys()}{ExportAllKeys()}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+All\+Keys (\begin{DoxyParamCaption}\item[{Key\+Id\+Args\+List\+Ptr \&}]{uid\+\_\+list, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{bool}]{secret }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em keys} & \\ \hline {\em out\+Buffer} & \\ \hline {\em secret} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} Export all the keys both private and public keys \begin{DoxyParams}{Parameters} {\em uid\+\_\+list} & key ids \\ \hline {\em out\+\_\+buffer} & output byte array \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} if success \end{DoxyReturn} \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_a51cb18aa7302d7a48ccd1ee17f060391}\label{classGpgFrontend_1_1GpgKeyImportExporter_a51cb18aa7302d7a48ccd1ee17f060391}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportKey@{ExportKey}} \index{ExportKey@{ExportKey}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportKey()}{ExportKey()}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+Key (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&}]{key, }\item[{Gpg\+Frontend\+::\+Byte\+Array\+Ptr \&}]{out\+\_\+buffer }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em key} & \\ \hline {\em out\+\_\+buffer} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} References Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error\+\_\+2\+\_\+err\+\_\+code(), Gpg\+Frontend\+::\+Gpg\+Key\+::\+Get\+Id(), and Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer(). \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_aa0a73314ef94f397e2ef53d40abc9731}\label{classGpgFrontend_1_1GpgKeyImportExporter_aa0a73314ef94f397e2ef53d40abc9731}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportKeyOpenSSH@{ExportKeyOpenSSH}} \index{ExportKeyOpenSSH@{ExportKeyOpenSSH}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportKeyOpenSSH()}{ExportKeyOpenSSH()}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+Key\+Open\+SSH (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&}]{key, }\item[{Gpg\+Frontend\+::\+Byte\+Array\+Ptr \&}]{out\+\_\+buffer }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em key} & \\ \hline {\em out\+\_\+buffer} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} References Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error\+\_\+2\+\_\+err\+\_\+code(), Gpg\+Frontend\+::\+Gpg\+Key\+::\+Get\+Id(), and Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer(). \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_a8157afa844c8bf964ce83f5de71efc5a}\label{classGpgFrontend_1_1GpgKeyImportExporter_a8157afa844c8bf964ce83f5de71efc5a}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportKeys@{ExportKeys}} \index{ExportKeys@{ExportKeys}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportKeys()}{ExportKeys()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+Keys (\begin{DoxyParamCaption}\item[{const Key\+Args\+List \&}]{keys, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{bool}]{secret = {\ttfamily false} }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em keys} & \\ \hline {\em out\+Buffer} & \\ \hline {\em secret} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} Export keys \begin{DoxyParams}{Parameters} {\em keys} & keys used \\ \hline {\em out\+Buffer} & output byte array \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} if success \end{DoxyReturn} \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_aa9fbda8f6c3fa36a503075d7a124fa3f}\label{classGpgFrontend_1_1GpgKeyImportExporter_aa9fbda8f6c3fa36a503075d7a124fa3f}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportKeys@{ExportKeys}} \index{ExportKeys@{ExportKeys}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportKeys()}{ExportKeys()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+Keys (\begin{DoxyParamCaption}\item[{Key\+Id\+Args\+List\+Ptr \&}]{uid\+\_\+list, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{bool}]{secret = {\ttfamily false} }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em uid\+\_\+list} & \\ \hline {\em out\+\_\+buffer} & \\ \hline {\em secret} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} Export Key \begin{DoxyParams}{Parameters} {\em uid\+\_\+list} & key ids \\ \hline {\em out\+\_\+buffer} & output byte array \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} if success \end{DoxyReturn} References Gpg\+Frontend\+::\+Singleton\+Function\+Object$<$ Gpg\+Key\+Getter $>$\+::\+Get\+Instance(), Gpg\+Frontend\+::\+Gpg\+Key\+Getter\+::\+Get\+Keys(), and Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer(). \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_a6a5e8d642ac5a3e98799af6495ef590b}\label{classGpgFrontend_1_1GpgKeyImportExporter_a6a5e8d642ac5a3e98799af6495ef590b}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportSecretKey@{ExportSecretKey}} \index{ExportSecretKey@{ExportSecretKey}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportSecretKey()}{ExportSecretKey()}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+Secret\+Key (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&}]{key, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em key} & \\ \hline {\em out\+Buffer} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} Export the secret key of a key pair(including subkeys) \begin{DoxyParams}{Parameters} {\em key} & target key pair \\ \hline {\em out\+Buffer} & output byte array \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} if successful \end{DoxyReturn} References Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error\+\_\+2\+\_\+err\+\_\+code(), Gpg\+Frontend\+::\+Gpg\+Key\+::\+Get\+Id(), and Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer(). \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_abf7c0442549ae8602e1249cdf0da55df}\label{classGpgFrontend_1_1GpgKeyImportExporter_abf7c0442549ae8602e1249cdf0da55df}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ExportSecretKeyShortest@{ExportSecretKeyShortest}} \index{ExportSecretKeyShortest@{ExportSecretKeyShortest}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ExportSecretKeyShortest()}{ExportSecretKeyShortest()}} {\footnotesize\ttfamily bool Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Export\+Secret\+Key\+Shortest (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GpgKey}{Gpg\+Key}} \&}]{key, }\item[{Gpg\+Frontend\+::\+Byte\+Array\+Ptr \&}]{out\+\_\+buffer }\end{DoxyParamCaption}) const} \begin{DoxyParams}{Parameters} {\em key} & \\ \hline {\em out\+Buffer} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} References Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error\+\_\+2\+\_\+err\+\_\+code(), Gpg\+Frontend\+::\+Gpg\+Key\+::\+Get\+Id(), and Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer(). \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_ab7a9be5283047695cd47562775adf79d}\label{classGpgFrontend_1_1GpgKeyImportExporter_ab7a9be5283047695cd47562775adf79d}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ImportKey@{ImportKey}} \index{ImportKey@{ImportKey}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ImportKey()}{ImportKey()}} {\footnotesize\ttfamily \mbox{\hyperlink{classGpgFrontend_1_1GpgImportInformation}{Gpg\+Frontend\+::\+Gpg\+Import\+Information}} Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::\+Import\+Key (\begin{DoxyParamCaption}\item[{Std\+Bype\+Array\+Ptr}]{in\+\_\+buffer }\end{DoxyParamCaption})} \begin{DoxyParams}{Parameters} {\em in\+Buffer} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} \mbox{\hyperlink{classGpgFrontend_1_1GpgImportInformation}{Gpg\+Import\+Information}} \end{DoxyReturn} Import key pair \begin{DoxyParams}{Parameters} {\em in\+Buffer} & input byte array \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} Import information \end{DoxyReturn} References Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error(). Referenced by Gpg\+Frontend\+::\+UI\+::\+Key\+Server\+Import\+Dialog\+::import\+\_\+keys(), Gpg\+Frontend\+::\+UI\+::\+Key\+List\+::import\+\_\+keys(), Gpg\+Frontend\+::\+Key\+Package\+Operator\+::\+Import\+Key\+Package(), Gpg\+Frontend\+::\+UI\+::\+Common\+Utils\+::\+Slot\+Import\+Key\+From\+Key\+Server(), and Gpg\+Frontend\+::\+UI\+::\+Common\+Utils\+::\+Slot\+Import\+Keys(). \doxysubsection{Member Data Documentation} \mbox{\Hypertarget{classGpgFrontend_1_1GpgKeyImportExporter_ade0e4de4078b6589f863dbfc76786f0e}\label{classGpgFrontend_1_1GpgKeyImportExporter_ade0e4de4078b6589f863dbfc76786f0e}} \index{GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}!ctx\_@{ctx\_}} \index{ctx\_@{ctx\_}!GpgFrontend::GpgKeyImportExporter@{GpgFrontend::GpgKeyImportExporter}} \doxysubsubsection{\texorpdfstring{ctx\_}{ctx\_}} {\footnotesize\ttfamily \mbox{\hyperlink{classGpgFrontend_1_1GpgContext}{Gpg\+Context}}\& Gpg\+Frontend\+::\+Gpg\+Key\+Import\+Exporter\+::ctx\+\_\+\hspace{0.3cm}{\ttfamily [private]}} {\bfseries Initial value\+:} \begin{DoxyCode}{0} \DoxyCodeLine{=} \DoxyCodeLine{ \mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a70484d7cfe9f9dcbcd5f8bb749250f36}{GpgContext::GetInstance}}(\mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_aa99440b9177f5d0c18840f08a40d64b7}{SingletonFunctionObject::GetChannel}}())} \end{DoxyCode} The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} \item src/core/function/gpg/Gpg\+Key\+Import\+Exporter.\+h\item src/core/function/gpg/Gpg\+Key\+Import\+Exporter.\+cpp\end{DoxyCompactItemize}