misc.c revision 84305
129088Smarkm/*- 229088Smarkm * Copyright (c) 1991, 1993 329088Smarkm * The Regents of the University of California. All rights reserved. 429088Smarkm * 529088Smarkm * Redistribution and use in source and binary forms, with or without 629088Smarkm * modification, are permitted provided that the following conditions 729088Smarkm * are met: 829088Smarkm * 1. Redistributions of source code must retain the above copyright 929088Smarkm * notice, this list of conditions and the following disclaimer. 1029088Smarkm * 2. Redistributions in binary form must reproduce the above copyright 1129088Smarkm * notice, this list of conditions and the following disclaimer in the 1229088Smarkm * documentation and/or other materials provided with the distribution. 1329088Smarkm * 3. All advertising materials mentioning features or use of this software 1429088Smarkm * must display the following acknowledgement: 1529088Smarkm * This product includes software developed by the University of 1629088Smarkm * California, Berkeley and its contributors. 1729088Smarkm * 4. Neither the name of the University nor the names of its contributors 1829088Smarkm * may be used to endorse or promote products derived from this software 1929088Smarkm * without specific prior written permission. 2029088Smarkm * 2129088Smarkm * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2229088Smarkm * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2329088Smarkm * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2429088Smarkm * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2529088Smarkm * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2629088Smarkm * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2729088Smarkm * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2829088Smarkm * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2929088Smarkm * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 3029088Smarkm * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 3129088Smarkm * SUCH DAMAGE. 3229088Smarkm */ 3329088Smarkm 3484305Smarkm#include <sys/cdefs.h> 3584305Smarkm__FBSDID("$FreeBSD: head/contrib/telnet/libtelnet/misc.c 84305 2001-10-01 16:04:55Z markm $"); 3684305Smarkm 3729088Smarkm#ifndef lint 3863248Speter#if 0 3929181Smarkmstatic const char sccsid[] = "@(#)misc.c 8.1 (Berkeley) 6/4/93"; 4063248Speter#endif 4129088Smarkm#endif /* not lint */ 4229088Smarkm 4329181Smarkm#include <stdio.h> 4429181Smarkm#include <stdlib.h> 4529088Smarkm#include "misc.h" 4681965Smarkm#if defined(AUTHENTICATION) 4729181Smarkm#include "auth.h" 4881965Smarkm#endif 4981965Smarkm#ifdef ENCRYPTION 5029181Smarkm#include "encrypt.h" 5181965Smarkm#endif /* ENCRYPTION */ 5229088Smarkm 5329088Smarkmchar *RemoteHostName; 5429088Smarkmchar *LocalHostName; 5529088Smarkmchar *UserNameRequested = 0; 5629088Smarkmint ConnectedCount = 0; 5729088Smarkm 5829088Smarkm void 5929088Smarkmauth_encrypt_init(local, remote, name, server) 6029088Smarkm char *local; 6129088Smarkm char *remote; 6229088Smarkm char *name; 6329088Smarkm int server; 6429088Smarkm{ 6529088Smarkm RemoteHostName = remote; 6629088Smarkm LocalHostName = local; 6729088Smarkm#if defined(AUTHENTICATION) 6829088Smarkm auth_init(name, server); 6929088Smarkm#endif 7029088Smarkm#ifdef ENCRYPTION 7129088Smarkm encrypt_init(name, server); 7229088Smarkm#endif /* ENCRYPTION */ 7329088Smarkm if (UserNameRequested) { 7429088Smarkm free(UserNameRequested); 7529088Smarkm UserNameRequested = 0; 7629088Smarkm } 7729088Smarkm} 7829088Smarkm 7929088Smarkm void 8029088Smarkmauth_encrypt_user(name) 8129088Smarkm char *name; 8229088Smarkm{ 8329088Smarkm extern char *strdup(); 8429088Smarkm 8529088Smarkm if (UserNameRequested) 8629088Smarkm free(UserNameRequested); 8729088Smarkm UserNameRequested = name ? strdup(name) : 0; 8829088Smarkm} 8929088Smarkm 9029088Smarkm void 9129088Smarkmauth_encrypt_connect(cnt) 9229088Smarkm int cnt; 9329088Smarkm{ 9429088Smarkm} 9529088Smarkm 9629088Smarkm void 9729088Smarkmprintd(data, cnt) 9829088Smarkm unsigned char *data; 9929088Smarkm int cnt; 10029088Smarkm{ 10129088Smarkm if (cnt > 16) 10229088Smarkm cnt = 16; 10329088Smarkm while (cnt-- > 0) { 10429088Smarkm printf(" %02x", *data); 10529088Smarkm ++data; 10629088Smarkm } 10729088Smarkm} 108