misc-progs: Sync STRING_SIZE.
[people/teissler/ipfire-2.x.git] / src / install+setup / libsmooth / libsmooth.h
CommitLineData
b4e381a8
MT
1/* SmoothWall libsmooth.
2 *
3 * This program is distributed under the terms of the GNU General Public
4 * Licence. See the file COPYING for details.
5 *
6 * (c) Lawrence Manning, 2001
7 * Contains prototypes for library functions.
8 *
b4e381a8
MT
9 */
10
11#ifndef ___LIBSMOOTH_H
12#define ___LIBSMOOTH_H
13
14#include <stdio.h>
15#include <stdlib.h>
16#include <string.h>
17#include <ctype.h>
18#include <wchar.h>
19#include <locale.h>
20#include <unistd.h>
21#include <sys/file.h>
22#include <sys/types.h>
23#include <sys/stat.h>
24#include <fcntl.h>
25#include <newt.h>
26#include <dirent.h>
27#include <sys/mount.h>
28
29#include <sys/socket.h>
30#include <netinet/in.h>
31#include <arpa/inet.h>
32
33#include <linux/cdrom.h>
34#include <sys/ioctl.h>
35
36#include "langs.h"
37
555637d1 38#define STRING_SIZE 1024
b4e381a8
MT
39
40#define ADDRESS 0
41#define NETADDRESS 1
42#define NETMASK 2
43#define DHCP 3
44#define NETCHANGE_TOTAL 4
45
75ae2191 46#define SCANNED_NICS "/var/ipfire/ethernet/scanned_nics"
eea0467a 47#define SYSDIR "/sys/class/net"
75ae2191 48
5057b611
HS
49#define _GREEN_CARD_ 0
50#define _RED_CARD_ 1
51#define _ORANGE_CARD_ 2
52#define _BLUE_CARD_ 3
53
b4e381a8
MT
54struct keyvalue
55{
56 char key[STRING_SIZE];
57 char value[STRING_SIZE];
58 struct keyvalue *next;
59};
b4e381a8
MT
60struct nic
61{
f9cc0d70 62 char driver[80];
75ae2191
MT
63 char description[256];
64 char macaddr[20];
96ed9998 65 char nic[20];
b4e381a8 66};
5057b611 67
75ae2191 68struct knic
b4e381a8 69{
f9cc0d70 70 char driver[80];
75ae2191
MT
71 char description[256];
72 char macaddr[20];
5057b611 73 char colour[20];
b4e381a8
MT
74};
75
5057b611 76
b4e381a8
MT
77/* libsmooth.c */
78void reboot(void);
79void stripnl(char *s);
80int mysystem(char *command);
81void errorbox(char *message);
e0bbaf87
AF
82int statuswindowscroll(int width, int height, char *title, char *text, ...);
83int disclaimerbox(char *message);
b4e381a8
MT
84void statuswindow(int width, int height, char *title, char *text, ...);
85int runcommandwithprogress(int width, int height, char *title, char *command,
86 int lines, char *text, ...);
87int runcommandwithstatus(char *command, char *message);
88int runhiddencommandwithstatus(char *command, char *message);
89int checkformodule(char *module);
90int replace(char filename1[], char *from, char *to);
91char* get_version(void);
92
93/* netstuff.c */
94int changeaddress(struct keyvalue *kv, char *colour, int typeflag,
95 char *defaultdhcphostname);
96int gettype(char *type);
97int setnetaddress(struct keyvalue *kv, char *colour);
98void networkdialogcallbacktype(newtComponent cm, void *data);
99int interfacecheck(struct keyvalue *kv, char *colour);
eea0467a 100int rename_nics(void);
9c1c1c57 101int init_knics(void);
84e975ba 102int create_udev(void);
5057b611 103int scan_network_cards(void);
9b040aa0
HS
104int nicmenu(int colour);
105int clear_card_entry(int cards);
106int ask_clear_card_entry(int cards);
b4e381a8 107int manualdriver(char *driver, char *driveroptions);
b4e381a8 108
d10e55d1 109/* varval.c */
b4e381a8
MT
110struct keyvalue *initkeyvalues(void);
111void freekeyvalues(struct keyvalue *head);
112int readkeyvalues(struct keyvalue *head, char *filename);
113int writekeyvalues(struct keyvalue *head, char *filename);
114int findkey(struct keyvalue *head, char *key, char *value);
115void appendkeyvalue(struct keyvalue *head, char *key, char *value);
116void replacekeyvalue(struct keyvalue *head, char *key, char *value);
117
118#endif
119