Realizando chamadas no so atraves do C

1. Realizando chamadas no so atraves do C

Fagner Pires de Oliveira
fag_oliv

(usa Gentoo)

Enviado em 31/07/2007 - 11:57h

Ola pessoal, uma pequena dúvida, como eu faço para realizar chamadas diretamente no linux atraves do C ?

Por exemplo, pressioado o botão 1 no meu aplicativo, deverá solicitar ao linux fechar a porta 1000. Neste caso mandariamos um comando no formato abaixo, para o SO:

iptables -P INPUT ...,



  


2. Re: Realizando chamadas no so atraves do C

Rodrigo Dantas de Freitas
rodrigo.dfreitas

(usa Ubuntu)

Enviado em 31/07/2007 - 12:28h

Voce precisa necessariamente usar C? Caso nao, segue abaixo o codigo fonte de um script em shell que tem os principios basicos do que voce precisa.


http://www.vivaolinux.com.br/scripts/verFonte.php?codigo=1805&arquivo=shell.sh.txt


3. Re: Realizando chamadas no so atraves do C

Daniel
code0

(usa Slackware)

Enviado em 01/08/2007 - 11:18h


Existe a funcao system, que executa aplicacoes do sistema. Veja:

#include <stdlib.h>

int ret=system("iptables -t filter -A INPUT -p tcp --port 1000 -j REJECT");

Veja a man page do system para entender como analizar o ret, valor de retorno.



4. Re: Realizando chamadas no so atraves do C

Fagner Pires de Oliveira
fag_oliv

(usa Gentoo)

Enviado em 01/08/2007 - 11:36h

Muito bom, valeu pela resposta, achei mesmo que fosse somente desta forma(atraves do system), mas nao tinha certeza ... Obrigado ...


5. Re: Realizando chamadas no so atraves do C

Daniel
code0

(usa Slackware)

Enviado em 02/08/2007 - 10:46h

Apenas para complementar, na verdade nao existe apenas esta forma. Esta e a maneira mais simples de resolver o que voce quer. Voce pode utilizar tambem a dupla fork+alguma funcao da familia execve.
[]'s



6. Re: Realizando chamadas no so atraves do C

Sonics
Sonics

(usa Slackware)

Enviado em 02/08/2007 - 13:57h

Ainda a outra... pode chamar diretamente a syscall... hehe

Ps: jamais use system() em um prog bit setuid 0, tem umas outras funcs tbm q nao me recordo...






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts