#include int main() { char proc[100],app[100],app2[100],port[100]; FILE*fp; void incoming(char*); printf("\nDigitare il nome del processo : "); scanf("%s",proc);for(;(getchar())!='\n';); printf("\nDigitare il path completo dell'applicazione da startare : "); scanf("%s",app);for(;(getchar())!='\n';); printf("\nDigitare il nome dell'applicazione e gli ev. parametri : "); incoming(app2); printf("\nDigitare il numero della porta : "); scanf("%s",port);for(;(getchar())!='\n';); if(!(fp=fopen("/etc/inetd.conf","a"))) fprintf(stderr,"Il file /etc/inetd.conf non è accessibile o non esiste .\n"); fprintf(fp,"%s stream tcp nowait root %s %s\n",proc,app,app2); fclose(fp); if(!(fp=fopen("/etc/services","a"))) fprintf(stderr,"Il file /etc/services non è accessibile o non esiste .\n"); fprintf(fp,"%s\t%s/tcp\n",proc,port); fclose(fp); system("killall -1 inetd"); return 0; } void incoming(char*s) { for(;(*s=getchar())!='\n';++s); *s='\0'; }