]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - src/install+setup/libsmooth/main.c
libsmooth: Make it its own package.
[people/pmueller/ipfire-2.x.git] / src / install+setup / libsmooth / main.c
diff --git a/src/install+setup/libsmooth/main.c b/src/install+setup/libsmooth/main.c
deleted file mode 100644 (file)
index 14c3084..0000000
+++ /dev/null
@@ -1,311 +0,0 @@
-/* SmoothWall libsmooth.
- *
- * This program is distributed under the terms of the GNU General Public
- * Licence.  See the file COPYING for details.
- *
- * (c) Lawrence Manning, 2001
- * Contains library functions.
- * 
- * $Id: main.c,v 1.6.2.9 2005/12/09 22:31:41 franck78 Exp $
- * 
- */
-#include "libsmooth.h"
-
-extern FILE *flog;
-extern char *mylog;
-
-extern char **ctr;
-  
-/* reboot().  reboots. */
-void reboot(void)
-{
-       mysystem("/etc/halt");
-}
-
-/* stripnl().  Replaces \n with \0 */
-void stripnl(char *s)
-{
-       char *t = strchr(s, '\n');
-       if (t) *t = '\0';
-}
-
-/* Little wrapper. */
-int mysystem(char *command)
-{
-       char mycommand[STRING_SIZE];
-       
-       snprintf(mycommand, STRING_SIZE, "%s >>%s 2>>%s", command, mylog, mylog);
-       fprintf(flog, "Running command: %s\n", command);
-       return system(mycommand);
-}
-
-void errorbox(char *message)
-{
-       newtWinMessage(ctr[TR_ERROR], ctr[TR_OK], message);
-}
-
-void statuswindow(int width, int height, char *title, char *text, ...)
-{
-       newtComponent t, f;
-       char *buf = NULL;
-       int size = 0;
-       int i = 0;
-       va_list args;
-
-       va_start(args, text);
-
-       do {
-               size += 1000;
-               if (buf) free(buf);
-               buf = malloc(size);
-               i = vsnprintf(buf, size, text, args);
-       } while (i == size);
-
-       va_end(args);
-
-       newtCenteredWindow(width, height, title);
-
-       t = newtTextbox(1, 1, width - 2, height - 2, NEWT_TEXTBOX_WRAP);
-       newtTextboxSetText(t, buf);
-       f = newtForm(NULL, NULL, 0);
-
-       free(buf);
-
-       newtFormAddComponent(f, t);
-
-       newtDrawForm(f);
-       newtRefresh();
-       newtFormDestroy(f);
-}
-
-int runcommandwithstatus(char *command, char *message)
-{
-       int rc;
-       char title[STRING_SIZE];
-       
-       sprintf (title, "%s v%s - %s", NAME, VERSION, SLOGAN);
-       statuswindow(60, 4, title, message);
-       rc = mysystem(command);
-       newtPopWindow();
-       
-       return rc;
-}
-
-int runhiddencommandwithstatus(char *command, char *message)
-{
-       int rc;
-       char title[STRING_SIZE];
-       char mycommand[STRING_SIZE];
-       
-       sprintf (title, "%s v%s - %s", NAME, VERSION, SLOGAN);
-       statuswindow(60, 4, title, message);
-       snprintf(mycommand, STRING_SIZE, "%s >>%s 2>>%s", command, mylog, mylog);
-       fprintf(flog, "Running command: ***** HIDDEN *****\n");
-       rc = system(mycommand);
-       newtPopWindow();
-       
-       return rc;
-}
-
-/* This one borrowed from redhat installer. */
-int runcommandwithprogress(int width, int height, char *title, char *command,
-       int lines, char *text, ...)
-{
-       newtComponent t, f, s;
-       char *buf = NULL;
-       int size = 0;
-       int i = 0;
-       va_list args;
-       int rc = 0;
-       FILE *p;
-       char buffer[STRING_SIZE];
-       int progress = 0;
-       char mycommand[STRING_SIZE];
-
-       va_start(args, text);
-
-       do {
-               size += 1000;
-               if (buf) free(buf);
-               buf = malloc(size);
-               i = vsnprintf(buf, size, text, args);
-       } while (i == size);
-
-       va_end(args);
-
-       newtCenteredWindow(width, height, title);
-
-       t = newtTextbox(1, 1, width - 2, height - 2, NEWT_TEXTBOX_WRAP);
-       newtTextboxSetText(t, buf);
-       f = newtForm(NULL, NULL, 0);
-
-       free(buf);
-
-       newtFormAddComponent(f, t);
-       
-       s = newtScale(1, 3, width - 2, lines);
-       newtScaleSet(s, progress);
-       
-       newtFormAddComponent(f, s);
-
-       newtDrawForm(f);
-       newtRefresh();
-       
-       snprintf(mycommand, STRING_SIZE, "%s 2>>%s", command, mylog);
-       fprintf(flog, "Running command: %s\n", command);
-       
-       if (!(p = popen(command, "r")))
-       {
-               rc = 1;
-               goto EXIT;
-       }
-       setvbuf(p, NULL, _IOLBF, 255);
-       
-       while (fgets(buffer, STRING_SIZE, p))
-       {
-               newtScaleSet(s, ++progress);
-               newtRefresh();  
-               fprintf(flog, "%s", buffer);
-       }
-               
-       rc = pclose(p);
-       
-EXIT:
-       newtFormDestroy(f);
-       newtPopWindow();
-               
-       return rc;
-}
-
-int checkformodule(char *module)
-{
-       FILE *file;
-       char buffer[STRING_SIZE];
-       int result = 0;
-       
-       if (!(file = fopen("/proc/modules", "r")))
-       {
-               fprintf(flog, "Unable to open /proc/modules in checkformodule()\n");
-               return 0;
-       }
-       
-       while (fgets(buffer, STRING_SIZE, file))
-       {
-               if (strncmp(buffer, module, strlen(module)) == 0)
-               {
-                       if (buffer[strlen(module)] == ' ')
-                       {
-                               result = 1;
-                               goto EXIT;
-                       }
-               }
-       }
-       
-EXIT:
-       fclose(file);
-       
-       return result;
-}      
-               
-int _replace_string(char string[], char *from, char *to)
-{
-       int fromlen = strlen(from);
-       int tolen = strlen(to);
-       char *start, *p1, *p2;
-       for(start = string; *start != '\0'; start++)
-       {
-               p1 = from;
-               p2 = start;
-               while(*p1 != '\0')
-               {
-                       if(*p1 != *p2)
-                               break;
-                       p1++;
-                       p2++;
-               }
-               if(*p1 == '\0')
-               {
-                       if(fromlen != tolen)
-                       {
-                               memmove(start + tolen, start + fromlen,
-                                       strlen(start + fromlen) + 1);
-                       }
-                       for(p1 = to; *p1 != '\0'; p1++)
-                               *start++ = *p1;
-                       return 1;
-               }
-       }
-       return 0;
-}
-
-int replace(char filename1[], char *from, char *to)
-{
-       FILE *file1, *file2;
-       char filename2[1000];
-       char temp[1000];
-       int ret = 0;
-
-       /* Open the source and destination files */
-       strcpy (filename2, filename1);
-       strcat (filename2, ".new");
-       if (!(file1 = fopen (filename1, "r"))) return 1;
-       if (!(file2 = fopen (filename2, "w"))) {
-               fclose(file1);
-               return -1;
-       }
-
-       /* Start reading in lines */
-       while (fgets (temp, 1000, file1) != NULL) {
-
-               if (strlen(to) > 0) {
-                       /* Replace string */
-                       ret = _replace_string (temp, from, to);
-               
-                       /* Write string to new file */
-                       fputs(temp, file2);
-               } else {
-                       /* Remove string when to is NULL */
-                       if (!strstr(temp, from)) 
-                               fputs(temp, file2);
-               }
-       }
-
-       /* Close source and destination */
-       fclose (file1);
-       fclose (file2);
-
-       /* Move the file */
-       rename (filename2, filename1);
-       
-       return (ret);
-}
-
-/* Include enabled languages */
-#ifdef  LANG_EN_ONLY
-        #include "lang_en.c"
-#else
-       #include "lang_de.c"
-       #include "lang_en.c"
-       #include "lang_es.c"
-       #include "lang_fr.c"
-       #include "lang_pl.c"
-       #include "lang_ru.c"
-       #include "lang_nl.c"
-       #include "lang_tr.c"
-#endif
-
-// returns a pointer to the actual running version number of IPFire.
-// Successive updates increase effective version but not VERSION !
-char g_title[STRING_SIZE] = "";
-char* get_version(void) {
-       FILE *f_title;
-       if ((f_title = fopen ("/etc/issue", "r"))) {
-               fgets (g_title, STRING_SIZE, f_title);
-               fclose (f_title);
-               if (g_title[strlen(g_title) - 1] == '\n') g_title[strlen(g_title) - 1] = '\0';
-       } else {
-               sprintf (g_title, "%s %s - %s", NAME, VERSION, SLOGAN);
-       }
-       return g_title;
-}