Travaux Pratiques - bsdsocket + amissl + https.c
Suite de la découverte de la bsdsocket.library et de amissl.
https.c
Dans le répertoire developer/Examples/AmigaOS3 il y a un https qui ne fonctionne pas très bien (il fige)
Heureusement, le code source est présent...
on avait déjà le NETINCLUDE:, il faut ajouter AMISSLINCLUDE:
AMISSLINCLUDE: devra pointer sur le répertoire AmiSSL\Developer\include
un petit coup de scsetup dans le répertoire où se trouve https.c, et création d'un répertoire obj pour que le makefile y place ses fichiers temporaires.
Le makefile
Pour pouvoir compiler, le compilateur aura du mal si on ne précise pas MEMORYSIZE=h (huge).
Il faut aussi une machine qui possède au moins 64Mo de RAM.
Il y a des macros qui utilisent des idenfifiants qui dépassent les 30 caractères, ce que le SAS/C 6.58 ne sait pas faire par défaut. Il faut le spécifier par un IDENTIFIERLENGTH=80.
Pour être tranquille au niveau de la pile, le STACKEXTEND se charge de l'agrandir au fur et à mesure des besoins.
L'option OPTIMIZE, transforme un gros bazar de 100Ko en un tout petit programme de 8972 octets.
Le programme https qui ne fonctionne pas pèse 32744 octets... avec gcc.
target: https obj/https.o: https.c sc INCLUDEDIR=AMISSLINCLUDE: \ INCLUDEDIR=NETINCLUDE: \ MEMORYSIZE=h \ IDENTIFIERLENGTH=80 \ CODE=FAR \ DATA=FAR \ OPTIMIZE \ STACKEXTEND \ OBJNAME obj/https.o https.c https: obj/https.o slink LIB:c.o, obj/https.o LIB LIB:sc.lib,LIB:amiga.lib TO https
Conclusion
Maintenant que https.c compile et que le programme généré est petit et qu'il fonctionne, une nouvelle porte s'ouvre...