4 * Functions which handle network and sharing configuration.
10 void edit_node(void) {
16 if (strlen(bstr("ok_button")) > 0) {
17 strcpy(node, bstr("node") );
20 serv_puts("CONF getsys|application/x-citadel-ignet-config");
21 serv_getln(buf, sizeof buf);
23 while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
24 extract_token(cnode, buf, 0, '|', sizeof cnode);
25 if (strcasecmp(node, cnode)) {
26 fprintf(fp, "%s\n", buf);
29 fprintf(fp, "%s|%s|%s|%s\n",
37 serv_puts("CONF putsys|application/x-citadel-ignet-config");
38 serv_getln(buf, sizeof buf);
40 while (fgets(buf, sizeof buf, fp) != NULL) {
41 buf[strlen(buf)-1] = 0;
55 void display_add_node(void)
57 output_headers(1, 1, 2, 0, 0, 0);
58 wprintf("<div id=\"banner\">\n");
59 wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>");
60 wprintf("<SPAN CLASS=\"titlebar\">");
61 wprintf(_("Add a new node"));
63 wprintf("</TD></TR></TABLE>\n");
64 wprintf("</div>\n<div id=\"content\">\n");
66 wprintf("<FORM METHOD=\"POST\" action=\"edit_node\">\n");
67 wprintf("<CENTER><TABLE border=0>\n");
68 wprintf("<TR><TD>%s</TD>", _("Node name"));
69 wprintf("<TD><INPUT TYPE=\"text\" NAME=\"node\" MAXLENGTH=\"16\"></TD></TR>\n");
70 wprintf("<TR><TD>%s</TD>", _("Shared secret"));
71 wprintf("<TD><INPUT TYPE=\"password\" NAME=\"secret\" MAXLENGTH=\"16\"></TD></TR>\n");
72 wprintf("<TR><TD>%s</TD>", _("Host or IP address"));
73 wprintf("<TD><INPUT TYPE=\"text\" NAME=\"host\" MAXLENGTH=\"64\"></TD></TR>\n");
74 wprintf("<TR><TD>%s</TD>", _("Port number"));
75 wprintf("<TD><INPUT TYPE=\"text\" NAME=\"port\" MAXLENGTH=\"8\"></TD></TR>\n");
76 wprintf("</TABLE><br />");
77 wprintf("<INPUT TYPE=\"submit\" NAME=\"ok_button\" VALUE=\"%s\">", _("Add node"));
79 wprintf("<INPUT TYPE=\"submit\" NAME=\"cancel_button\" VALUE=\"%s\">", _("Cancel"));
80 wprintf("</CENTER></FORM>\n");
85 void display_edit_node(void)
94 strcpy(node, bstr("node"));
96 output_headers(1, 1, 2, 0, 0, 0);
97 wprintf("<div id=\"banner\">\n");
98 wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>");
99 wprintf("<SPAN CLASS=\"titlebar\">");
100 wprintf(_("Edit node configuration for "));
102 wprintf("</SPAN>\n");
103 wprintf("</TD></TR></TABLE>\n");
104 wprintf("</div>\n<div id=\"content\">\n");
106 serv_puts("CONF getsys|application/x-citadel-ignet-config");
107 serv_getln(buf, sizeof buf);
109 while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
110 extract_token(cnode, buf, 0, '|', sizeof cnode);
111 extract_token(csecret, buf, 1, '|', sizeof csecret);
112 extract_token(chost, buf, 2, '|', sizeof chost);
113 extract_token(cport, buf, 3, '|', sizeof cport);
115 if (!strcasecmp(node, cnode)) {
116 wprintf("<FORM METHOD=\"POST\" action=\"edit_node\">\n");
117 wprintf("<CENTER><TABLE border=0>\n");
119 wprintf(_("Node name"));
121 wprintf("<TD><INPUT TYPE=\"text\" NAME=\"node\" MAXLENGTH=\"16\" VALUE=\"%s\"></TD></TR>\n", cnode);
123 wprintf(_("Shared secret"));
125 wprintf("<TD><INPUT TYPE=\"password\" NAME=\"secret\" MAXLENGTH=\"16\" VALUE=\"%s\"></TD></TR>\n", csecret);
127 wprintf(_("Host or IP address"));
129 wprintf("<TD><INPUT TYPE=\"text\" NAME=\"host\" MAXLENGTH=\"64\" VALUE=\"%s\"></TD></TR>\n", chost);
131 wprintf(_("Port number"));
133 wprintf("<TD><INPUT TYPE=\"text\" NAME=\"port\" MAXLENGTH=\"8\" VALUE=\"%s\"></TD></TR>\n", cport);
134 wprintf("</TABLE><br />");
135 wprintf("<INPUT TYPE=\"submit\" NAME=\"ok_button\" VALUE=\"%s\">",
138 wprintf("<INPUT TYPE=\"submit\" NAME=\"cancel_button\" VALUE=\"%s\">",
140 wprintf("</CENTER></FORM>\n");
146 else { /* command error getting configuration */
147 wprintf("%s<br />\n", &buf[4]);
155 void display_netconf(void)
160 output_headers(1, 1, 2, 0, 0, 0);
161 wprintf("<div id=\"banner\">\n");
162 wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>");
163 wprintf("<SPAN CLASS=\"titlebar\">");
164 wprintf(_("Network configuration"));
165 wprintf("</SPAN>\n");
166 wprintf("</TD></TR></TABLE>\n");
167 wprintf("</div>\n<div id=\"content\">\n");
170 wprintf("<a href=\"display_add_node\">");
171 wprintf(_("Add a new node"));
172 wprintf("</A><br />\n");
173 wprintf("</CENTER>");
175 wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>");
176 wprintf("<SPAN CLASS=\"titlebar\">");
177 wprintf(_("Currently configured nodes"));
178 wprintf("</SPAN>\n");
179 wprintf("</TD></TR></TABLE>\n");
180 serv_puts("CONF getsys|application/x-citadel-ignet-config");
181 serv_getln(buf, sizeof buf);
183 wprintf("<CENTER><TABLE border=0>\n");
184 while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
185 extract_token(node, buf, 0, '|', sizeof node);
186 wprintf("<TR><TD><FONT SIZE=+1>");
188 wprintf("</FONT></TD>");
189 wprintf("<TD><a href=\"display_edit_node&node=");
192 wprintf(_("(Edit)"));
193 wprintf("</A></TD>");
194 wprintf("<TD><a href=\"display_confirm_delete_node&node=");
197 wprintf(_("(Delete)"));
198 wprintf("</A></TD>");
201 wprintf("</TABLE></CENTER>\n");
207 void display_confirm_delete_node(void)
211 output_headers(1, 1, 2, 0, 0, 0);
212 wprintf("<div id=\"banner\">\n");
213 wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>");
214 wprintf("<SPAN CLASS=\"titlebar\">");
215 wprintf(_("Confirm delete"));
216 wprintf("</SPAN>\n");
217 wprintf("</TD></TR></TABLE>\n");
218 wprintf("</div>\n<div id=\"content\">\n");
220 strcpy(node, bstr("node"));
222 wprintf(_("Are you sure you want to delete "));
223 wprintf("<FONT SIZE=+1>");
225 wprintf("</FONT>?<br />\n");
226 wprintf("<a href=\"delete_node&node=");
230 wprintf("</A> ");
231 wprintf("<a href=\"display_netconf\">");
233 wprintf("</A><br />\n");
238 void delete_node(void)
245 strcpy(node, bstr("node") );
248 serv_puts("CONF getsys|application/x-citadel-ignet-config");
249 serv_getln(buf, sizeof buf);
251 while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
252 extract_token(cnode, buf, 0, '|', sizeof cnode);
253 if (strcasecmp(node, cnode)) {
254 fprintf(fp, "%s\n", buf);
260 serv_puts("CONF putsys|application/x-citadel-ignet-config");
261 serv_getln(buf, sizeof buf);
263 while (fgets(buf, sizeof buf, fp) != NULL) {
264 buf[strlen(buf)-1] = 0;
281 strcpy(node, bstr("node"));
283 if (strlen(bstr("add_button")) > 0) {
284 sprintf(buf, "NSET addnode|%s", node);
286 serv_getln(buf, sizeof buf);
288 output_headers(1, 1, 0, 0, 0, 0);
290 wprintf("<a href=\"display_netconf\">");
291 wprintf(_("Back to menu"));
295 strcpy(WC->ImportantMessage, &buf[4]);