Pessoal,
Tenho este programa que � executado no redirect_program do squid.
O redirect_children � 5.
Como pode ser visto eu n�o sei como faz�-lo encerrar quando o squid faz
reconfigure/shutdown/restart/stop. Isso faz com que depois de um tempo
tenha muitos processos rodando.
Qual c�digo teria que inserir no programa abaixo para que ele
finalizasse quando o squid parar ?
[]'s
/* ****************** */
/* program redirect.c */
/* Begin of program */
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include <sys/types.h>
#include <regex.h>
#include <sys/signal.h>
int main(int argc, char *argv[])
{
int i = 0;
int j;
char line[BUFSIZ];
char url[256];
char method[64];
char ident[256];
char src_address[256];
FILE *urlfile;
FILE *output_file;
char slog[256];
char stemp[256];
char slinha[256];
char sprograma[256];
int i1 = 0;
int i2 = 0;
int i3 = 0;
char s_url_retorno[256];
char s_url_comp[256];
char s_url_p[256];
char s_ip[256];
char s_logout_p[256];
for ( ;; ) {
while((fgets(line, BUFSIZ, stdin) != NULL)) {
sscanf(line, "%255s %255s %255s %63s", url, src_address,
ident, method);
i1 = strlen(src_address);
i2 = strlen(ident);
strcpy(s_url_comp,"http://192.168.1.200/my_url");
strcpy(s_logout_p,url);
if((strcmp(s_logout_p,"logout") == 0 ) ||
(strcmp(s_url_comp,url) == 0 ) ) {
strcpy(sprograma, "/aplicati/squid/some_action ");
strcat(sprograma, src_address);
strcat(sprograma, " ");
strcat(sprograma, ident);
strcat(sprograma, " ");
strcat(sprograma, url);
strcat(sprograma, " ");
strcat(sprograma, method);
system(sprograma);
}
else {
printf("\n");
fflush(stdout);
}
}
}
exit(0);
}
/* ****************** */
/* End of program */
Assinantes em 18/07/2002: 2234
Mensagens recebidas desde 07/01/1999: 175450
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
mailto:[EMAIL PROTECTED]