Visual C++ Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

C++ Examples

CkString
Byte Array
Bounced Mail
Bz2
Character Encoding
CSV
DH Key Exchange
DKIM/DomainKeys
Digital Certificates
Digital Signatures
DSA
Email
Email Object
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT / HTML Email
POP3
RSA
S/MIME
SMTP
Socket
Spider
SSH Key
SSH
SSH Tunnel
SFTP
Tar
Upload
XML
XMP
Zip Compression


More Examples...
Amazon S3
NTLM
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
Bzip2
LZW

 

 

 

 

 

 

 

 

SSH Public Key Authentication

Demonstrates how to authenticate with an SSH server using public key authentication.

Downloads:

MS Windows Visual C/C++ Libraries
Linux/CentOS C/C++ Libraries
MAC OS X C/C++ Libraries
Solaris C/C++ Libraries
C++ Builder Libraries
#include <CkSsh.h>
#include <CkSshKey.h>

void ChilkatSample(void)
    {
    //  Important: It is helpful to send the contents of the
    //  sftp.LastErrorText property when sending email
    //  to support@chilkatsoft.com

    CkSsh ssh;

    //  Any string automatically begins a fully-functional 30-day trial.
    bool success;
    success = ssh.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        printf("%s\n",ssh.lastErrorText());
        return;
    }

    //  Set some timeouts, in milliseconds:
    ssh.put_ConnectTimeoutMs(5000);
    ssh.put_IdleTimeoutMs(15000);

    //  Connect to the SSH server.
    //  The standard SSH port = 22
    //  The hostname may be a hostname or IP address.
    long port;
    const char * hostname;
    hostname = "www.my-ssh-server.com";
    port = 22;
    success = ssh.Connect(hostname,port);
    if (success != true) {
        printf("%s\n",ssh.lastErrorText());
        return;
    }

    CkSshKey key;

    //  Load a private key from a PEM file:
    //  (Private keys may be loaded from OpenSSH and Putty formats.
    //  Both encrypted and unencrypted private key file formats
    //  are supported.  This example loads an unencrypted private
    //  key in OpenSSH format.  PuTTY keys typically use the .ppk
    //  file extension, while OpenSSH keys use the PEM format.
    const char * privKey;
    privKey = key.loadText("myPrivateKey.pem");
    if (privKey == 0 ) {
        printf("%s\n",key.lastErrorText());
        return;
    }

    //  (For PuTTY keys, call FromPuttyPrivateKey instead.)
    success = key.FromOpenSshPrivateKey(privKey);
    if (success != true) {
        printf("%s\n",key.lastErrorText());
        return;
    }

    //  Authenticate with the SSH server using the login and
    //  private key.  (The corresponding public key should've
    //  been installed on the SSH server beforehand.)
    success = ssh.AuthenticatePk("myLogin",key);
    if (success != true) {
        printf("%s\n",ssh.lastErrorText());
        return;
    }

    printf("%s\n",ssh.lastErrorText());
    printf("Public-Key Authentication Successful!\n");
    }

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Mail Component · XML Parser