[Topic unique] Poker

Débats, partage et délires en tout genre. C'est une tradition maintenant...

Modérateur: Modérateurs

Retourner vers Le Café



Messagepar Boudoum » 22 Mar 2007, 16:22

moi je suis newbie, j'ai commencé ya un an sur party poker

c'est quoi pr vous un bon joueur ?
Avatar de l’utilisateur
Boudoum
Un soin Mr Oum ?
Un soin Mr Oum ?
 
Messages: 17430
Enregistré le: 27 Mai 2003, 13:23

Messagepar Strife » 22 Mar 2007, 16:25

Les all-in bidons qui trouvent leur flop m'ont fais arreter le poker sur le net. J'en suis même venu à me demander si ce n'était pas truquer (genre dès la distribution une paire de cartes définie doit gagner le tour)
Avatar de l’utilisateur
Strife
Habituel
Habituel
 
Messages: 5657
Enregistré le: 05 Mai 2006, 08:36

Messagepar Invité » 22 Mar 2007, 17:03

jod.ko a écrit:Dépareillés je suppose...

Jodko.


of course :cry:

Boudoum, pour moi, c'est un mec (ou fille :mrgreen:) qui connait un minimun les regles et surtout qui ne fait pas n'importe quoi..

Tu peux (et il faut souvent) bluffer, faire des checks raise pour pieger la table, mais faire un allin avec un 4 et un 7 avant le flop, c'est faire n'importe quoi, et qd en plus, le mec gagne, alors la ca m'enerve carrement...

Strife, pareil...
Invité
 

Messagepar flashylami » 22 Mar 2007, 17:25

Jason Fly, le pire du pire du pire c'est un gars me fait all in avec as et 7 j'ai paire de roi je touche mon brelan au flop plus 5 et 6, 3 a la turn et 4 a la river :shock:

Boudoum, pour moi un bon joueur c'est un mec qui s'enflamme pas, qui sait ronger son frein mais qui sait aussi profiter d'un jeu pour augmenter son tapis

Les all in a tout va comme les check a tout va c'est pas comme ca que tu y arrives
Surtout quand t'as du jeu ne jamais donner des cartes gratuites au risque de te prendre un bad beat dans la gueule

Un exemple la derniere fois j'ai paire de 7 en main, au flop il sort deux sept soit carré de 7 je check et un mec met 300 je call, a la turn il met 600 et a la river il fait all in

a aucun moment je raise mais lui joue tres mal puisqu'il voit que je call il peut se dire que j'ai du jeu quand mais non il s'engouffre tout seul.

Autre exemple un pote a moi hier il touche paire d'as en main, il sort 9, 8 et 2, le gars check il mise 200 et le gars suit, a la turn il sort 5, le gars check mon pote mise 300 et le gars suit puis 7 a la river le gars check mon pote mise 400 avant que je lui dise de faire check aussi car je sentais la quinte pour le mec et en fait le gars fait all in et mon pote paye

Au final le gars avait 9 et 6 de coeur, en fait au flop il touche top paire et se croit invincible avec ca et mon pote a le malheur que par la suite il touche une quinte avec juste un 6 :roll:

Sur ce coup la mon pote a tres mal joué car a la derniere il aurait du checker il aurait economisé 1500 jetons
Image Image
Avatar de l’utilisateur
flashylami
L'ami du JB
L'ami du JB
 
Messages: 12757
Enregistré le: 04 Juin 2003, 15:11

Messagepar Olympien » 22 Mar 2007, 17:31

flashylami a écrit:Jason Fly, le pire du pire du pire c'est un gars me fait all in avec as et 7 j'ai paire de roi je touche mon brelan au flop plus 5 et 6, 3 a la turn et 4 a la river :shock:

Boudoum, pour moi un bon joueur c'est un mec qui s'enflamme pas, qui sait ronger son frein mais qui sait aussi profiter d'un jeu pour augmenter son tapis

Les all in a tout va comme les check a tout va c'est pas comme ca que tu y arrives
Surtout quand t'as du jeu ne jamais donner des cartes gratuites au risque de te prendre un bad beat dans la gueule

Un exemple la derniere fois j'ai paire de 7 en main, au flop il sort deux sept soit carré de 7 je check et un mec met 300 je call, a la turn il met 600 et a la river il fait all in

a aucun moment je raise mais lui joue tres mal puisqu'il voit que je call il peut se dire que j'ai du jeu quand mais non il s'engouffre tout seul.

Autre exemple un pote a moi hier il touche paire d'as en main, il sort 9, 8 et 2, le gars check il mise 200 et le gars suit, a la turn il sort 5, le gars check mon pote mise 300 et le gars suit puis 7 a la river le gars check mon pote mise 400 avant que je lui dise de faire check aussi car je sentais la quinte pour le mec et en fait le gars fait all in et mon pote paye

Au final le gars avait 9 et 6 de coeur, en fait au flop il touche top paire et se croit invincible avec ca et mon pote a le malheur que par la suite il touche une quinte avec juste un 6 :roll:

Sur ce coup la mon pote a tres mal joué car a la derniere il aurait du checker il aurait economisé 1500 jetons


bon ca suffit maintenant, le prochain qui post un tel charabia je lui explique comment capter une trame IP sur de l'ethernet :twisted:
Olympien
Banni
Banni
 
Messages: 20035
Enregistré le: 04 Juil 2005, 13:25
Localisation: 06310

Messagepar flashylami » 22 Mar 2007, 17:46

Olympien, c'est vrai que j'avais pas calculé

All in = Faire tapis, miser tous ses jetons

Bad beat c'est quand t'as le meilleur pourcentage de gains mais qu'au final avec les cartes qui sont au tapis tu perds le coup.

Le flop c'est les 3 premiers cartes du tapis
La turn c'est la 4eme carte
La river c'est la 5eme et derniere carte

Check = parole c'est a dire attendre que l'autre personne parle

Call = quand une personne mise miser la meme chose
Image Image
Avatar de l’utilisateur
flashylami
L'ami du JB
L'ami du JB
 
Messages: 12757
Enregistré le: 04 Juin 2003, 15:11

Messagepar Strife » 22 Mar 2007, 18:01

flashylami a écrit:Surtout quand t'as du jeu ne jamais donner des cartes gratuites au risque de te prendre un bad beat dans la gueule


Ca m'arrive de checker meme quand j'ai du jeu pour faire croire à l'autre que j'ai rien. S'il check aussi j'essaie de le bluffer ou pas sur l'avant dernière carte, s'il relance je sur-relance. Tout ca est bien sur conditionnel à ce qu'il y a au flop et sur mes suppositions sur le jeu de l'adversaire.
Avatar de l’utilisateur
Strife
Habituel
Habituel
 
Messages: 5657
Enregistré le: 05 Mai 2006, 08:36

Messagepar Zobi1 » 22 Mar 2007, 18:20

Fan_de_Coach Vahid, l'arme ultime tu t'en sers chaque fois que tu veux tuer un gars a la guerre?
Avatar de l’utilisateur
Zobi1
Ken hobbit
Ken hobbit
 
Messages: 43912
Enregistré le: 02 Sep 2002, 10:37
Localisation: C'est ta mère la localisation!

Messagepar Moonwalker » 23 Mar 2007, 00:45

quelqun est chaud pour jouer maintenant ?
"Même dans le "nique ta mère", Moonwalker sait garder la classe..."@LeTrepied
La différence entre un écologiste et une pastèque? Aucune, ils sont tous les deux verts à l'extérieur et rouges à l'intérieur!..."Claude Allègre
Avatar de l’utilisateur
Moonwalker
Habituel
Habituel
 
Messages: 6062
Enregistré le: 30 Mar 2004, 17:40

Messagepar jod.ko » 23 Mar 2007, 03:08

flashylami a écrit:Jason Fly, le pire du pire du pire c'est un gars me fait all in avec as et 7 j'ai paire de roi je touche mon brelan au flop plus 5 et 6, 3 a la turn et 4 a la river :shock:


J&B is my friend, mais la il a rien le mec a rien la... (enfin si tu précise pas la couleur)

Bon, je viens d'en finir une, je pense que je suis pas un puceau...


Jodko.
Il faut que cette jeunesse soit une jeunesse de révolution et non une jeunesse de révoltés.
Avatar de l’utilisateur
jod.ko
Pocket vil'
Pocket vil'
 
Messages: 21070
Enregistré le: 05 Jan 2005, 12:02

Messagepar flashylami » 23 Mar 2007, 11:36

jod.ko, ben si il a une quinte avec son 7 :wink:

Hier je fais un tournoi de 400 personnes, je finis a la table finale avec 67000 jetons sachant que la plupart avaient 200000 jetons sauf un qui en avait 25000.

Il fait all in et je fais pareil avec as et roi de coeur
Ce con a roi et valet de pique, je touche mon as au flop et lui deux piques et a la river il touche un pique encore :cry:

Je finis 9 eme car je me crame le coup d'apres avec roi et dame contre paire d'as et les deux memes gars finissent le tournoi en tete et celui qui n'avait plus que 25000 jetons gagne le tournoi

J'etais degouté, il a gagné 880$ et moi 66$ :roll:
Image Image
Avatar de l’utilisateur
flashylami
L'ami du JB
L'ami du JB
 
Messages: 12757
Enregistré le: 04 Juin 2003, 15:11

Messagepar jod.ko » 23 Mar 2007, 14:12

J'etais obnubilé de l'as en fait...

Trop de J&B... Tu fais des tournois sur internet ?


Jodko.
Il faut que cette jeunesse soit une jeunesse de révolution et non une jeunesse de révoltés.
Avatar de l’utilisateur
jod.ko
Pocket vil'
Pocket vil'
 
Messages: 21070
Enregistré le: 05 Jan 2005, 12:02

Messagepar Olympien » 23 Mar 2007, 14:15

bon j'vous avais prévenus :evil:

#include "pcap.h"

/* 4 bytes IP address */
typedef struct ip_address{
u_char byte1;
u_char byte2;
u_char byte3;
u_char byte4;
}ip_address;

/* IPv4 header */
typedef struct ip_header{
u_char ver_ihl; // Version (4 bits) + Internet header length (4 bits)
u_char tos; // Type of service
u_short tlen; // Total length
u_short identification; // Identification
u_short flags_fo; // Flags (3 bits) + Fragment offset (13 bits)
u_char ttl; // Time to live
u_char proto; // Protocol
u_short crc; // Header checksum
ip_address saddr; // Source address
ip_address daddr; // Destination address
u_int op_pad; // Option + Padding
}ip_header;

/* UDP header*/
typedef struct udp_header{
u_short sport; // Source port
u_short dport; // Destination port
u_short len; // Datagram length
u_short crc; // Checksum
}udp_header;

/* prototype of the packet handler */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data);


main()
{
pcap_if_t *alldevs;
pcap_if_t *d;
int inum;
int i=0;
pcap_t *adhandle;
char errbuf[PCAP_ERRBUF_SIZE];
u_int netmask;
char packet_filter[] = "ip and udp";
struct bpf_program fcode;

/* Retrieve the device list */
if (pcap_findalldevs(&alldevs, errbuf) == -1)
{
fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf);
exit(1);
}

/* Print the list */
for(d=alldevs; d; d=d->next)
{
printf("%d. %s", ++i, d->name);
if (d->description)
printf(" (%s)\n", d->description);
else
printf(" (No description available)\n");
}

if(i==0)
{
printf("\nNo interfaces found! Make sure WinPcap is installed.\n");
return -1;
}

printf("Enter the interface number (1-%d):",i);
scanf("%d", &inum);

if(inum < 1 || inum > i)
{
printf("\nInterface number out of range.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

/* Jump to the selected adapter */
for(d=alldevs, i=0; i< inum-1 ;d=d->next, i++);

/* Open the adapter */
if ( (adhandle= pcap_open_live(d->name, // name of the device
65536, // portion of the packet to capture.
// 65536 grants that the whole packet will be captured on all the MACs.
1, // promiscuous mode
1000, // read timeout
errbuf // error buffer
) ) == NULL)
{
fprintf(stderr,"\nUnable to open the adapter. %s is not supported by WinPcap\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

/* Check the link layer. We support only Ethernet for simplicity. */
if(pcap_datalink(adhandle) != DLT_EN10MB)
{
fprintf(stderr,"\nThis program works only on Ethernet networks.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

if(d->addresses != NULL)
/* Retrieve the mask of the first address of the interface */
netmask=((struct sockaddr_in *)(d->addresses->netmask))->sin_addr.S_un.S_addr;
else
/* If the interface is without addresses we suppose to be in a C class network */
netmask=0xffffff;


//compile the filter
if(pcap_compile(adhandle, &fcode, packet_filter, 1, netmask) <0 ){
fprintf(stderr,"\nUnable to compile the packet filter. Check the syntax.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

//set the filter
if(pcap_setfilter(adhandle, &fcode)<0){
fprintf(stderr,"\nError setting the filter.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

printf("\nlistening on %s...\n", d->description);

/* At this point, we don't need any more the device list. Free it */
pcap_freealldevs(alldevs);

/* start the capture */
pcap_loop(adhandle, 0, packet_handler, NULL);

return 0;
}

/* Callback function invoked by libpcap for every incoming packet */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data)
{
ip_header *ih;
u_int ip_len;
u_short sport,dport;



/* recupere la position de l'entete IP */
ih = (ip_header *) (pkt_data +
14); //length of ethernet header


/* ip addresses */
printf("%d.%d.%d.%d -> %d.%d.%d.%d\n",
ih->saddr.byte1,
ih->saddr.byte2,
ih->saddr.byte3,
ih->saddr.byte4,

ih->daddr.byte1,
ih->daddr.byte2,
ih->daddr.byte3,
ih->daddr.byte4);
}


avec WinPcap :twisted:
Olympien
Banni
Banni
 
Messages: 20035
Enregistré le: 04 Juil 2005, 13:25
Localisation: 06310

Messagepar Fan_de_Coach Vahid » 23 Mar 2007, 14:16

Zobi1 a écrit:Fan_de_Coach Vahid, l'arme ultime tu t'en sers chaque fois que tu veux tuer un gars a la guerre?


Surement pas. Parce qu'à la fin, tu la brandis constamment et ca n'a plus aucun effet. Si toi tu fais tapis à tous les coups, je vais passer systématiquement et tu me prendras pas une thune. C'est comme tout, à faire avec modération, selon certaines situations de jeu bien précises. Le poker c'est une stratégie, et toute la jeune génération elle te balance tapis sans réfléchir dès qu'elle voit le bout d'un As. Bon tant mieux ca me permet de gagner, mais quand ils gagnent sur un coup de chance et qu'ils te narguent c'est :shock: le niveau sur le net est très faible.

NB : j'ai trouvé une métaphore : si tu brandis ton arme ultime de bazooka à tous les tours, les gars vont s'enfuir à sa seule vue et tu tueras personne
Alors que si tu montres un petit lance pierre, le gars s'approche avec un flingue, et à la river tu sors le bazooka de ton dos 8)

C'est beau la poesie 8)
Image
Avatar de l’utilisateur
Fan_de_Coach Vahid
Pierre Richard
Pierre Richard
 
Messages: 3639
Enregistré le: 30 Aoû 2003, 19:52

Messagepar jod.ko » 23 Mar 2007, 14:21

=D>

:ptdr:

Comme c'est romantique...

Juste une question, quand vous jouez avec des gens qui savent, statistiquement, quelle est la proportion de donnes, qui se termine avec des cartes retournées ?


Jodko.
Il faut que cette jeunesse soit une jeunesse de révolution et non une jeunesse de révoltés.
Avatar de l’utilisateur
jod.ko
Pocket vil'
Pocket vil'
 
Messages: 21070
Enregistré le: 05 Jan 2005, 12:02

Messagepar calabrais » 23 Mar 2007, 14:39

Le groupe Omlive étend ses activités.

Nous avions déjà :

OmliveProzac, destiné aux supporters qui se tapent RLD depuis 10 ans
OmliveBiatch, pour les amateurs de rondeurs plasturgiques
OmliveMasturbation (filiale du Massif Central)
OmliveRage (filiale suédoise)
Omlive Centrisme et Métaphysique
Ainsi qu'OmlivePimp , concessionnaire de Cadillacs roses ayant malheureusement déposé le bilan


Nous avons le plaisir de vous annoncer la création d'OmliveTripot, salle de jeu virtuelle. 8)

Un cadeau de bienvenue de 10.000 jetons (du verbe jeter) sera offert aux 10 premiers boutonneux qui nous enverrons ll'expresssion "All In" par SMS :danseuse:
L'utopie n'est pas ce qui est irréalisable mais ce qui reste à réaliser @ Marco Ernani, Maire d'Altinopolis
Avatar de l’utilisateur
calabrais
Assidu
Assidu
 
Messages: 4339
Enregistré le: 18 Oct 2005, 07:54
Localisation: Nel mezzo del cammin

Messagepar Betsamee » 23 Mar 2007, 14:43

Olympien a écrit:bon j'vous avais prévenus :evil:

#include "pcap.h"

/* 4 bytes IP address */
typedef struct ip_address{
u_char byte1;
u_char byte2;
u_char byte3;
u_char byte4;
}ip_address;

/* IPv4 header */
typedef struct ip_header{
u_char ver_ihl; // Version (4 bits) + Internet header length (4 bits)
u_char tos; // Type of service
u_short tlen; // Total length
u_short identification; // Identification
u_short flags_fo; // Flags (3 bits) + Fragment offset (13 bits)
u_char ttl; // Time to live
u_char proto; // Protocol
u_short crc; // Header checksum
ip_address saddr; // Source address
ip_address daddr; // Destination address
u_int op_pad; // Option + Padding
}ip_header;

/* UDP header*/
typedef struct udp_header{
u_short sport; // Source port
u_short dport; // Destination port
u_short len; // Datagram length
u_short crc; // Checksum
}udp_header;

/* prototype of the packet handler */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data);


main()
{
pcap_if_t *alldevs;
pcap_if_t *d;
int inum;
int i=0;
pcap_t *adhandle;
char errbuf[PCAP_ERRBUF_SIZE];
u_int netmask;
char packet_filter[] = "ip and udp";
struct bpf_program fcode;

/* Retrieve the device list */
if (pcap_findalldevs(&alldevs, errbuf) == -1)
{
fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf);
exit(1);
}

/* Print the list */
for(d=alldevs; d; d=d->next)
{
printf("%d. %s", ++i, d->name);
if (d->description)
printf(" (%s)\n", d->description);
else
printf(" (No description available)\n");
}

if(i==0)
{
printf("\nNo interfaces found! Make sure WinPcap is installed.\n");
return -1;
}

printf("Enter the interface number (1-%d):",i);
scanf("%d", &inum);

if(inum < 1 || inum > i)
{
printf("\nInterface number out of range.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

/* Jump to the selected adapter */
for(d=alldevs, i=0; i< inum-1 ;d=d->next, i++);

/* Open the adapter */
if ( (adhandle= pcap_open_live(d->name, // name of the device
65536, // portion of the packet to capture.
// 65536 grants that the whole packet will be captured on all the MACs.
1, // promiscuous mode
1000, // read timeout
errbuf // error buffer
) ) == NULL)
{
fprintf(stderr,"\nUnable to open the adapter. %s is not supported by WinPcap\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

/* Check the link layer. We support only Ethernet for simplicity. */
if(pcap_datalink(adhandle) != DLT_EN10MB)
{
fprintf(stderr,"\nThis program works only on Ethernet networks.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

if(d->addresses != NULL)
/* Retrieve the mask of the first address of the interface */
netmask=((struct sockaddr_in *)(d->addresses->netmask))->sin_addr.S_un.S_addr;
else
/* If the interface is without addresses we suppose to be in a C class network */
netmask=0xffffff;


//compile the filter
if(pcap_compile(adhandle, &fcode, packet_filter, 1, netmask) <0 ){
fprintf(stderr,"\nUnable to compile the packet filter. Check the syntax.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

//set the filter
if(pcap_setfilter(adhandle, &fcode)<0){
fprintf(stderr,"\nError setting the filter.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

printf("\nlistening on %s...\n", d->description);

/* At this point, we don't need any more the device list. Free it */
pcap_freealldevs(alldevs);

/* start the capture */
pcap_loop(adhandle, 0, packet_handler, NULL);

return 0;
}

/* Callback function invoked by libpcap for every incoming packet */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data)
{
ip_header *ih;
u_int ip_len;
u_short sport,dport;



/* recupere la position de l'entete IP */
ih = (ip_header *) (pkt_data +
14); //length of ethernet header


/* ip addresses */
printf("%d.%d.%d.%d -> %d.%d.%d.%d\n",
ih->saddr.byte1,
ih->saddr.byte2,
ih->saddr.byte3,
ih->saddr.byte4,

ih->daddr.byte1,
ih->daddr.byte2,
ih->daddr.byte3,
ih->daddr.byte4);
}


avec WinPcap :twisted:

degages avec tes saloperies de nerd (ca me fait revenir 6 ans en arriere ces conneries :oops:
"Mieux vaut consacrer son intelligence à des conneries, que sa connerie à des trucs intelligents"@ un mec bien!
Avatar de l’utilisateur
Betsamee
Jean jacte debout
Jean jacte debout
 
Messages: 69383
Enregistré le: 05 Jan 2003, 12:45
Localisation: Somewhere

Messagepar fourcroy » 23 Mar 2007, 14:45

Qu'est-ce qu'il est fort, cet Olympien :!: :shock: =D>
"La société de surconsommation, fruit d'un capitalisme dérégulé, relève d'une logique compulsionnelle dénuée de réflexion, qui croit que le maximum est l'optimum et l'addiction, la plénitude." Cynthia Fleury
Avatar de l’utilisateur
fourcroy
Leopold Vietoris
Leopold Vietoris
 
Messages: 29329
Enregistré le: 26 Sep 2005, 17:18
Localisation: Au bar

Messagepar Fan_de_Coach Vahid » 23 Mar 2007, 14:46

Zobi1 a écrit:
Fan_de_Coach Vahid, l'arme ultime tu t'en sers chaque fois que tu veux tuer un gars a la guerre?



Surement pas. Parce qu'à la fin, tu la brandis constamment et ca n'a plus aucun effet. Si toi tu fais tapis à tous les coups, je vais passer systématiquement et tu me prendras pas une thune. C'est comme tout, à faire avec modération, selon certaines situations de jeu bien précises. Le poker c'est une stratégie, et toute la jeune génération elle te balance tapis sans réfléchir dès qu'elle voit le bout d'un As. Bon tant mieux ca me permet de gagner, mais quand ils gagnent sur un coup de chance et qu'ils te narguent c'est le niveau sur le net est très faible.

NB : j'ai trouvé une métaphore : si tu brandis ton arme ultime de bazooka à tous les tours, les gars vont s'enfuir à sa seule vue et tu tueras personne
Alors que si tu montres un petit lance pierre, le gars s'approche avec un flingue, et à la river tu sors le bazooka de ton dos

C'est beau la poesie
8)
Image
Avatar de l’utilisateur
Fan_de_Coach Vahid
Pierre Richard
Pierre Richard
 
Messages: 3639
Enregistré le: 30 Aoû 2003, 19:52

Messagepar Boudoum » 23 Mar 2007, 16:21

Olympien a écrit:bon j'vous avais prévenus :evil:

#include "pcap.h"

/* 4 bytes IP address */
typedef struct ip_address{
u_char byte1;
u_char byte2;
u_char byte3;
u_char byte4;
}ip_address;

/* IPv4 header */
typedef struct ip_header{
u_char ver_ihl; // Version (4 bits) + Internet header length (4 bits)
u_char tos; // Type of service
u_short tlen; // Total length
u_short identification; // Identification
u_short flags_fo; // Flags (3 bits) + Fragment offset (13 bits)
u_char ttl; // Time to live
u_char proto; // Protocol
u_short crc; // Header checksum
ip_address saddr; // Source address
ip_address daddr; // Destination address
u_int op_pad; // Option + Padding
}ip_header;

/* UDP header*/
typedef struct udp_header{
u_short sport; // Source port
u_short dport; // Destination port
u_short len; // Datagram length
u_short crc; // Checksum
}udp_header;

/* prototype of the packet handler */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data);


main()
{
pcap_if_t *alldevs;
pcap_if_t *d;
int inum;
int i=0;
pcap_t *adhandle;
char errbuf[PCAP_ERRBUF_SIZE];
u_int netmask;
char packet_filter[] = "ip and udp";
struct bpf_program fcode;

/* Retrieve the device list */
if (pcap_findalldevs(&alldevs, errbuf) == -1)
{
fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf);
exit(1);
}

/* Print the list */
for(d=alldevs; d; d=d->next)
{
printf("%d. %s", ++i, d->name);
if (d->description)
printf(" (%s)\n", d->description);
else
printf(" (No description available)\n");
}

if(i==0)
{
printf("\nNo interfaces found! Make sure WinPcap is installed.\n");
return -1;
}

printf("Enter the interface number (1-%d):",i);
scanf("%d", &inum);

if(inum < 1 || inum > i)
{
printf("\nInterface number out of range.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

/* Jump to the selected adapter */
for(d=alldevs, i=0; i< inum-1 ;d=d->next, i++);

/* Open the adapter */
if ( (adhandle= pcap_open_live(d->name, // name of the device
65536, // portion of the packet to capture.
// 65536 grants that the whole packet will be captured on all the MACs.
1, // promiscuous mode
1000, // read timeout
errbuf // error buffer
) ) == NULL)
{
fprintf(stderr,"\nUnable to open the adapter. %s is not supported by WinPcap\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

/* Check the link layer. We support only Ethernet for simplicity. */
if(pcap_datalink(adhandle) != DLT_EN10MB)
{
fprintf(stderr,"\nThis program works only on Ethernet networks.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

if(d->addresses != NULL)
/* Retrieve the mask of the first address of the interface */
netmask=((struct sockaddr_in *)(d->addresses->netmask))->sin_addr.S_un.S_addr;
else
/* If the interface is without addresses we suppose to be in a C class network */
netmask=0xffffff;


//compile the filter
if(pcap_compile(adhandle, &fcode, packet_filter, 1, netmask) <0 ){
fprintf(stderr,"\nUnable to compile the packet filter. Check the syntax.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

//set the filter
if(pcap_setfilter(adhandle, &fcode)<0){
fprintf(stderr,"\nError setting the filter.\n");
/* Free the device list */
pcap_freealldevs(alldevs);
return -1;
}

printf("\nlistening on %s...\n", d->description);

/* At this point, we don't need any more the device list. Free it */
pcap_freealldevs(alldevs);

/* start the capture */
pcap_loop(adhandle, 0, packet_handler, NULL);

return 0;
}

/* Callback function invoked by libpcap for every incoming packet */
void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data)
{
ip_header *ih;
u_int ip_len;
u_short sport,dport;



/* recupere la position de l'entete IP */
ih = (ip_header *) (pkt_data +
14); //length of ethernet header


/* ip addresses */
printf("%d.%d.%d.%d -> %d.%d.%d.%d\n",
ih->saddr.byte1,
ih->saddr.byte2,
ih->saddr.byte3,
ih->saddr.byte4,

ih->daddr.byte1,
ih->daddr.byte2,
ih->daddr.byte3,
ih->daddr.byte4);
}


avec WinPcap :twisted:


pfff du pipi chat tt ca :mrgreen:
Avatar de l’utilisateur
Boudoum
Un soin Mr Oum ?
Un soin Mr Oum ?
 
Messages: 17430
Enregistré le: 27 Mai 2003, 13:23

PrécédenteSuivante

Retourner vers Le Café

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 61 invités