Ben Lindstrom | 387c472 | 2001-05-08 20:27:25 +0000 | [diff] [blame] | 1 | /* $OpenBSD: misc.h,v 1.6 2001/05/08 19:45:24 mouring Exp $ */ |
Ben Lindstrom | 36579d3 | 2001-01-29 07:39:26 +0000 | [diff] [blame] | 2 | |
Ben Lindstrom | 226cfa0 | 2001-01-22 05:34:40 +0000 | [diff] [blame] | 3 | /* |
| 4 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
| 5 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
| 6 | * All rights reserved |
| 7 | * |
| 8 | * As far as I am concerned, the code I have written for this software |
| 9 | * can be used freely for any purpose. Any derived versions of this |
| 10 | * software must be clearly marked as such, and if the derived work is |
| 11 | * incompatible with the protocol description in the RFC file, it must be |
| 12 | * called by a name other than "ssh" or "Secure Shell". |
| 13 | */ |
| 14 | /* remove newline at end of string */ |
| 15 | char *chop(char *s); |
| 16 | |
| 17 | /* return next token in configuration line */ |
| 18 | char *strdelim(char **s); |
| 19 | |
| 20 | /* set filedescriptor to non-blocking */ |
| 21 | void set_nonblock(int fd); |
Kevin Steves | b6e773a | 2001-02-04 13:20:36 +0000 | [diff] [blame] | 22 | |
Ben Lindstrom | 086cf21 | 2001-03-05 05:56:40 +0000 | [diff] [blame] | 23 | struct passwd * pwcopy(struct passwd *pw); |
| 24 | |
Ben Lindstrom | 19066a1 | 2001-04-12 23:39:26 +0000 | [diff] [blame] | 25 | /* |
| 26 | * Convert ASCII string to TCP/IP port number. |
| 27 | * Port must be >0 and <=65535. |
| 28 | * Return 0 if invalid. |
| 29 | */ |
| 30 | int a2port(const char *s); |
Ben Lindstrom | 387c472 | 2001-05-08 20:27:25 +0000 | [diff] [blame] | 31 | |
Ben Lindstrom | 4529b70 | 2001-05-03 23:39:53 +0000 | [diff] [blame] | 32 | /* code from scp.c/rcp.c */ |
| 33 | char *cleanhostname(char *host); |
| 34 | char *colon(char *cp); |
Ben Lindstrom | 19066a1 | 2001-04-12 23:39:26 +0000 | [diff] [blame] | 35 | |
Ben Lindstrom | 387c472 | 2001-05-08 20:27:25 +0000 | [diff] [blame] | 36 | /* function to assist building execv() arguments */ |
| 37 | typedef struct arglist arglist; |
| 38 | struct arglist { |
| 39 | char **list; |
| 40 | int num; |
| 41 | int nalloc; |
| 42 | }; |
| 43 | |
| 44 | void addargs(arglist *args, char *fmt, ...) __attribute__((format(printf, 2, 3))); |
| 45 | |
Kevin Steves | b6e773a | 2001-02-04 13:20:36 +0000 | [diff] [blame] | 46 | /* wrapper for signal interface */ |
| 47 | typedef void (*mysig_t)(int); |
| 48 | mysig_t mysignal(int sig, mysig_t act); |