Bonjour à tous,

Je souhaite créer un serveur.c qui utilise non seulement une librairie que j'ai crée mais aussi une sorte de bibliothèque générique. Le compilateur ne m'indique pas d'érreur concernant la libraire, mais impossible d'utiliser les fonctions créer dans ma bibliothèque.

dans serveur.c :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
#include "tftp.h"
#include <unistd.h>
#include <stdlib.h>
#include <arpa/inet.h>
 
int opcode = -1;
void request(char * buffer) {
	tftp_request * trequest = malloc(sizeof(tftp_request *));
	int i = tftp_buffer_to_paquet_request( trequest, buffer);
	printf("%d", i);
	if (opcode == RRQ) {
 
	} else if (opcode == WRQ) {
 
	}
}
dans tftp.h je définie des structures et des en tetes de méthode
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
int tftp_paquet_data_to_buffer(const tftp_data* paquet, char* buffer);
int tftp_paquet_ack_to_buffer(const tftp_ack* paquet, char* buffer);
int tftp_paquet_error_to_buffer(const tftp_error* paquet, char* buffer);
int tftp_paquet_request_to_buffer(const tftp_request* paquet, char* buffer);
int tftp_paquet_to_buffer(const tftp_paquet *paquet, char *buffer);
 
int tftp_buffer_to_paquet_request(tftp_request* paquet, const char* buffer);
int tftp_buffer_to_paquet_data(tftp_data* paquet, const char* buffer);
int tftp_buffer_to_paquet_error(tftp_error* paquet, const char* buffer);
int tftp_buffer_to_paquet_ack(tftp_ack* paquet, const char* buffer);
int buffer_to_tftp_paquet(tftp_paquet *paquet, const char *buffer);
 
int send_error(SocketUDP *socket, int errorCode, char *message);
int send_paquet(const tftp_paquet* paquet, SocketUDP* sock, char* adress, int port);
int receive_with_timeout(SocketUDP* sock, char* adress, int port, int timeout, tftp_paquet* response_paquet);
 
int send_RRQ_wait_DATA_timeout(tftp_request *rpaquet, SocketUDP *socket, const char *adresse, int port, int timeout,
						tftp_data *dpaquet, int *rcvport);
int send_ACK_wait_DATA_timeout(tftp_ack* paquet_ack, SocketUDP* sock, int timeout, tftp_data* paquet_data, size_t* taille, int rcv_port);
le compilateur me donne ça :
"serveur.c:9:2: attention : implicit declaration of function ‘tftp_buffer_to_paquet’ [-Wimplicit-function-declaration]"

Je n'arrive pas à enlever ce warning, par contre si j'inverse les arguments, il me dit parfaitement que c'est pas le bon ordre