1a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat/*
2a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  OSXvnc Copyright (C) 2001 Dan McGuirk <mcguirk@incompleteness.net>.
3a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  Original Xvnc code Copyright (C) 1999 AT&T Laboratories Cambridge.
4a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  All Rights Reserved.
5a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *
6a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  This is free software; you can redistribute it and/or modify
7a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  it under the terms of the GNU General Public License as published by
8a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  the Free Software Foundation; either version 2 of the License, or
9a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  (at your option) any later version.
10a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *
11a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  This software is distributed in the hope that it will be useful,
12a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  GNU General Public License for more details.
15a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *
16a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  You should have received a copy of the GNU General Public License
17a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  along with this software; if not, write to the Free Software
18a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
19a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat *  USA.
20a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat */
21a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat
22a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat#include <stdio.h>
23a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat#include <rfb/rfb.h>
24a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat
25a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehatstatic void usage(void)
26a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat{
27a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    printf("\nusage:  storepasswd <password> <filename>\n\n");
28a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat
29a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    printf("Stores a password in encrypted format.\n");
30a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    printf("The resulting file can be used with the -rfbauth argument to OSXvnc.\n\n");
31a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    exit(1);
32a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat}
33a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat
34a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehatint main(int argc, char *argv[])
35a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat{
36a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    if (argc != 3)
37a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat        usage();
38a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat
39a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    if (rfbEncryptAndStorePasswd(argv[1], argv[2]) != 0) {
40a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat        printf("storing password failed.\n");
41a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat        return 1;
42a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    } else {
43a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat        printf("storing password succeeded.\n");
44a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat        return 0;
45a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat    }
46a430b2b5ca4f0967836f5820e8f03adc17fc0a24San Mehat}
47