110d63b7dSRichard Lowe /* 210d63b7dSRichard Lowe * CDDL HEADER START 310d63b7dSRichard Lowe * 410d63b7dSRichard Lowe * The contents of this file are subject to the terms of the 510d63b7dSRichard Lowe * Common Development and Distribution License (the "License"). 610d63b7dSRichard Lowe * You may not use this file except in compliance with the License. 710d63b7dSRichard Lowe * 810d63b7dSRichard Lowe * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 910d63b7dSRichard Lowe * or http://www.opensolaris.org/os/licensing. 1010d63b7dSRichard Lowe * See the License for the specific language governing permissions 1110d63b7dSRichard Lowe * and limitations under the License. 1210d63b7dSRichard Lowe * 1310d63b7dSRichard Lowe * When distributing Covered Code, include this CDDL HEADER in each 1410d63b7dSRichard Lowe * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1510d63b7dSRichard Lowe * If applicable, add the following below this CDDL HEADER, with the 1610d63b7dSRichard Lowe * fields enclosed by brackets "[]" replaced with your own identifying 1710d63b7dSRichard Lowe * information: Portions Copyright [yyyy] [name of copyright owner] 1810d63b7dSRichard Lowe * 1910d63b7dSRichard Lowe * CDDL HEADER END 2010d63b7dSRichard Lowe */ 2110d63b7dSRichard Lowe /* 2210d63b7dSRichard Lowe * Copyright 2004 Sun Microsystems, Inc. All rights reserved. 2310d63b7dSRichard Lowe * Use is subject to license terms. 248e0c8248SAndrew Stormont * 258e0c8248SAndrew Stormont * Copyright 2019 RackTop Systems. 2610d63b7dSRichard Lowe */ 2710d63b7dSRichard Lowe 28*e7afc443SToomas Soome #ifndef _MKSH_MISC_H 29*e7afc443SToomas Soome #define _MKSH_MISC_H 30*e7afc443SToomas Soome 3110d63b7dSRichard Lowe #include <mksh/defs.h> 3210d63b7dSRichard Lowe 33*e7afc443SToomas Soome extern void append_char(wchar_t, String); 34*e7afc443SToomas Soome extern Property append_prop(Name, Property_id); 35*e7afc443SToomas Soome extern void append_string(wchar_t *, String, int); 36*e7afc443SToomas Soome extern void enable_interrupt(void (*) (int)); 37*e7afc443SToomas Soome extern char *errmsg(int); 38*e7afc443SToomas Soome extern void fatal_mksh(const char *, ...) __NORETURN; 39*e7afc443SToomas Soome extern void fatal_reader_mksh(const char *, ...) __NORETURN; 4010d63b7dSRichard Lowe extern char *get_current_path_mksh(void); 41*e7afc443SToomas Soome extern Property get_prop(Property, Property_id); 42*e7afc443SToomas Soome extern char *getmem(size_t); 43*e7afc443SToomas Soome extern Name getname_fn(wchar_t *name, int len, Boolean dont_enter, 44*e7afc443SToomas Soome Boolean *foundp = NULL); 45*e7afc443SToomas Soome extern void store_name(Name); 46*e7afc443SToomas Soome extern void free_name(Name); 4710d63b7dSRichard Lowe extern void handle_interrupt_mksh(int); 48*e7afc443SToomas Soome extern Property maybe_append_prop(Name, Property_id); 49*e7afc443SToomas Soome extern void retmem(wchar_t *); 50*e7afc443SToomas Soome extern void retmem_mb(caddr_t); 5110d63b7dSRichard Lowe extern void setup_char_semantics(void); 52*e7afc443SToomas Soome extern void setup_interrupt(void (*) (int)); 53*e7afc443SToomas Soome extern void warning_mksh(char *, ...); 5410d63b7dSRichard Lowe 55*e7afc443SToomas Soome extern void append_string(char *, String, int); 56*e7afc443SToomas Soome extern wchar_t *get_wstring(char *); 5710d63b7dSRichard Lowe 5810d63b7dSRichard Lowe 59*e7afc443SToomas Soome #endif /* _MKSH_MISC_H */ 60