Bonjour à tous,
Durant mon temps libre, je bidouille en C et en crypto et je me demandais comment gérer directement (sans passer par des librairies telles GMP) des clés de 256 bits. J'entend par la générer ces clés, les stocker et les manipuler (faire des XOR avec un bloc de texte par exemple).
J'imagine que cela doit passer par des tableaux, mais n'étant pas expert dans le domaine, j'aurais voulu avoir un peu de doc sur le sujet.
Note (…)
Forum Programmation.c Probleme de calcul du Checksum TCP
Bonjour a tous,
je fabrique mes propres paquets TCP et j'ai du mal a calculer le checksum
je cree le pseudo header comme ca :
ma fonction checksum est la suivante
je fabrique mes propres paquets TCP et j'ai du mal a calculer le checksum
je cree le pseudo header comme ca :
struct pseudo_header
{
unsigned long saddr, daddr; /*! src/dst IP addresses */
char mbz;
unsigned char ptcl; /*! protocol (tcp = 6, udp = 17) */
unsigned short tcpl; /*! length (tcp header + payload)*/
};
ma fonction checksum est la suivante
int checksum (unsigned short *buf, int nwords)
{
unsigned long sum;
for (sum (…)
Forum Programmation.c Galère de pointeurs avec les GArrays
Bonjour à tous,
J'ai besoin de stocker les paquets que composent une communications dans un programme C.
Comme j'ai beaucoup de communications, j'ai commencé par faire un B-Tree dans lequel chaque valeur (associée à une clé) est un GArray qui contient les paquets de la communication.
Le soucis, c'est que ça bug... les 2 premiers paquets de chaque com. sont bien enregistrés et repris, mais pour les suivants j'ai des résultats bizarres...
voilà mon code :
J'ai besoin de stocker les paquets que composent une communications dans un programme C.
Comme j'ai beaucoup de communications, j'ai commencé par faire un B-Tree dans lequel chaque valeur (associée à une clé) est un GArray qui contient les paquets de la communication.
Le soucis, c'est que ça bug... les 2 premiers paquets de chaque com. sont bien enregistrés et repris, mais pour les suivants j'ai des résultats bizarres...
voilà mon code :
/*!******************************
* *
* (…)
Forum Programmation.c Glib et les Binary Trees
Bonjour à tous,
j'essaie d'utiliser les fonctions B-Tree qu'offre Glib mais je rencontre quelques petits soucis.
En fait, j'ajoute des valeurs à la chaine dans un B-Tree et quand je lookup ces valeurs, elles ont disparues... seule reste la dernière ajoutée...
voilà mon code :
j'essaie d'utiliser les fonctions B-Tree qu'offre Glib mais je rencontre quelques petits soucis.
En fait, j'ajoute des valeurs à la chaine dans un B-Tree et quand je lookup ces valeurs, elles ont disparues... seule reste la dernière ajoutée...
voilà mon code :
#include <glib.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
GTree * redirected_connections;
int main(int argc, char **argv)
{
redirected_connections = g_tree_new((GCompareDataFunc)strcmp);
int i;
for (i=1; i < 250; i++)
{
int value = (i * i);
(…)
Forum Programmation.c Makefile et petit soucis de liens
Bonjour à tous
n'étant pas dev de nature, je suis un peu pommé quand à la compilation de mon code.
Ce dernier se découpe en plusieurs fichiers que je compile dans un makefile.
Le code utilise glib et lipq, et le problème se situe au niveau de ces librairies.
Quand arrive la dernière étape de compilation
je me prend cette liste d'erreurs dans la figure (…)
n'étant pas dev de nature, je suis un peu pommé quand à la compilation de mon code.
Ce dernier se découpe en plusieurs fichiers que je compile dans un makefile.
Le code utilise glib et lipq, et le problème se situe au niveau de ces librairies.
Quand arrive la dernière étape de compilation
gcc -Wall -pthread -static -lipq `pkg-config --cflags --libs glib-2.0` -o argusproxy-redirector main.o netcode.o intercom.o tables.o
je me prend cette liste d'erreurs dans la figure (…)
Forum Programmation.perl 2 actions dans un "die"
Hello,
j'ai un petit soucis avec die : je voudrais que lorsqu'un "open" ne fonctionne pas, die m'écrire et log et sorte avec "-1"
donc j'ai une ligne comme ca :
mais il n'en veux pas.... si je ne met que l'appel vers "meurt" ou le "return -1", ca fonctionne mais pour les deux en meme temps ya pas moyen...
ya t'il une syntaxe particulière que j'ai raté ? ou peut (…)
j'ai un petit soucis avec die : je voudrais que lorsqu'un "open" ne fonctionne pas, die m'écrire et log et sorte avec "-1"
donc j'ai une ligne comme ca :
opendir(DSTREPORT,$destreport)or die (meurt("Impossible d'ouvrir le répertoire $destreport... $!");return -1);
mais il n'en veux pas.... si je ne met que l'appel vers "meurt" ou le "return -1", ca fonctionne mais pour les deux en meme temps ya pas moyen...
ya t'il une syntaxe particulière que j'ai raté ? ou peut (…)
Forum Programmation.perl Gtk2 : rafraichissement d'un champ Gtk2::Entry
Bonjour a tous,
je programme actuellement une interface en Gtk2 ou j'utilise des champs de date pour lancer une exploitation de logs entre ces dates.
C'est très simple, j'ai deux champs $datedebut et $datefin qui sont du type Gtk2::Entry->new_with_max_length(10) et j'ai également un bouton qui appel la fonction "lancer"
dans cette fonction "lancer" je fais mes deux récupérations de valeurs :
Celà marche bien. Mais quand mon exploitation est terminée et que (…)
je programme actuellement une interface en Gtk2 ou j'utilise des champs de date pour lancer une exploitation de logs entre ces dates.
C'est très simple, j'ai deux champs $datedebut et $datefin qui sont du type Gtk2::Entry->new_with_max_length(10) et j'ai également un bouton qui appel la fonction "lancer"
dans cette fonction "lancer" je fais mes deux récupérations de valeurs :
my $debut_exp = $datedebut->get_text();
my $fin_exp = $datefin->get_text();
Celà marche bien. Mais quand mon exploitation est terminée et que (…)