[Solved] HTTPS request in love/lua

Questions about the LÖVE API, installing LÖVE and other support related questions go here.
Forum rules
Before you make a thread asking for help, read this.
Post Reply
User avatar
Sasha264
Party member
Posts: 131
Joined: Mon Sep 08, 2014 7:57 am

[Solved] HTTPS request in love/lua

Post by Sasha264 »

Hello!
Spent about 5 hours to achieve one simple thing: make an https request. No results :cry: :?

First try was to install luasec using luarocks as google tells:

Code: Select all

C:\Users\User>luarocks install luasec
Installing http://luarocks.org/repositories/rocks/luasec-0.7alpha-2.src.rock...

Error: Could not find expected file openssl/ssl.h for OPENSSL -- you may have to install OPENSSL in your system and/or set the OPENSSL_DIR variable

C:\Users\User>
Could not find openssl... Ok, lets download Open SSL github repository, and specify it to luarocks:

Code: Select all

C:\Users\User>luarocks install luasec OPENSSL_INCDIR=D:\_repo\libz\openssl-master\include
Installing http://luarocks.org/repositories/rocks/luasec-0.7alpha-2.src.rock...

7-Zip 9.10 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-12-22

Processing archive: luasec-0.7alpha.tar.gz

Extracting  luasec-0.7alpha.tar

Everything is Ok

Size:       378880
Compressed: 52093

7-Zip 9.10 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-12-22

Processing archive: luasec-0.7alpha.tar

Extracting  pax_global_header
Extracting  luasec-luasec-0.7alpha
Extracting  luasec-luasec-0.7alpha\.gitignore
Extracting  luasec-luasec-0.7alpha\CHANGELOG
Extracting  luasec-luasec-0.7alpha\INSTALL
Extracting  luasec-luasec-0.7alpha\LICENSE
Extracting  luasec-luasec-0.7alpha\Makefile
Extracting  luasec-luasec-0.7alpha\README.md
Extracting  luasec-luasec-0.7alpha\luasec-0.6-1.rockspec
Extracting  luasec-luasec-0.7alpha\luasec-0.7alpha-1.rockspec
Extracting  luasec-luasec-0.7alpha\luasec.sln
Extracting  luasec-luasec-0.7alpha\luasec.suo
Extracting  luasec-luasec-0.7alpha\luasec.vcproj
Extracting  luasec-luasec-0.7alpha\luasec.vcxproj
Extracting  luasec-luasec-0.7alpha\luasec.vcxproj.filters
Extracting  luasec-luasec-0.7alpha\samples
Extracting  luasec-luasec-0.7alpha\samples\README
Extracting  luasec-luasec-0.7alpha\samples\certs
Extracting  luasec-luasec-0.7alpha\samples\certs\all.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\clientA.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\clientA.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\clientA.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\clientB.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\clientB.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\clientB.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\rootA.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\rootA.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\rootA.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\rootB.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\rootB.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\rootB.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\serverA.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\serverA.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\serverA.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\serverB.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\serverB.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\serverB.sh
Extracting  luasec-luasec-0.7alpha\samples\chain
Extracting  luasec-luasec-0.7alpha\samples\chain\client.lua
Extracting  luasec-luasec-0.7alpha\samples\chain\server.lua
Extracting  luasec-luasec-0.7alpha\samples\chain\util.lua
Extracting  luasec-luasec-0.7alpha\samples\curve-negotiation
Extracting  luasec-luasec-0.7alpha\samples\curve-negotiation\client.lua
Extracting  luasec-luasec-0.7alpha\samples\curve-negotiation\server.lua
Extracting  luasec-luasec-0.7alpha\samples\dhparam
Extracting  luasec-luasec-0.7alpha\samples\dhparam\client.lua
Extracting  luasec-luasec-0.7alpha\samples\dhparam\params.sh
Extracting  luasec-luasec-0.7alpha\samples\dhparam\server.lua
Extracting  luasec-luasec-0.7alpha\samples\digest
Extracting  luasec-luasec-0.7alpha\samples\digest\client.lua
Extracting  luasec-luasec-0.7alpha\samples\digest\server.lua
Extracting  luasec-luasec-0.7alpha\samples\ecdh
Extracting  luasec-luasec-0.7alpha\samples\ecdh\client.lua
Extracting  luasec-luasec-0.7alpha\samples\ecdh\server.lua
Extracting  luasec-luasec-0.7alpha\samples\info
Extracting  luasec-luasec-0.7alpha\samples\info\client.lua
Extracting  luasec-luasec-0.7alpha\samples\info\server.lua
Extracting  luasec-luasec-0.7alpha\samples\key
Extracting  luasec-luasec-0.7alpha\samples\key\genkey.sh
Extracting  luasec-luasec-0.7alpha\samples\key\loadkey.lua
Extracting  luasec-luasec-0.7alpha\samples\loop-gc
Extracting  luasec-luasec-0.7alpha\samples\loop-gc\client.lua
Extracting  luasec-luasec-0.7alpha\samples\loop-gc\server.lua
Extracting  luasec-luasec-0.7alpha\samples\loop
Extracting  luasec-luasec-0.7alpha\samples\loop\client.lua
Extracting  luasec-luasec-0.7alpha\samples\loop\server.lua
Extracting  luasec-luasec-0.7alpha\samples\oneshot
Extracting  luasec-luasec-0.7alpha\samples\oneshot\client.lua
Extracting  luasec-luasec-0.7alpha\samples\oneshot\server.lua
Extracting  luasec-luasec-0.7alpha\samples\sni
Extracting  luasec-luasec-0.7alpha\samples\sni\client.lua
Extracting  luasec-luasec-0.7alpha\samples\sni\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verification
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-string
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-string\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-string\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-table
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-table\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-table\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\success
Extracting  luasec-luasec-0.7alpha\samples\verification\success\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\success\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verify
Extracting  luasec-luasec-0.7alpha\samples\verify\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verify\server.lua
Extracting  luasec-luasec-0.7alpha\samples\want
Extracting  luasec-luasec-0.7alpha\samples\want\client.lua
Extracting  luasec-luasec-0.7alpha\samples\want\server.lua
Extracting  luasec-luasec-0.7alpha\samples\wantread
Extracting  luasec-luasec-0.7alpha\samples\wantread\client.lua
Extracting  luasec-luasec-0.7alpha\samples\wantread\server.lua
Extracting  luasec-luasec-0.7alpha\samples\wantwrite
Extracting  luasec-luasec-0.7alpha\samples\wantwrite\client.lua
Extracting  luasec-luasec-0.7alpha\samples\wantwrite\server.lua
Extracting  luasec-luasec-0.7alpha\src
Extracting  luasec-luasec-0.7alpha\src\Makefile
Extracting  luasec-luasec-0.7alpha\src\compat.h
Extracting  luasec-luasec-0.7alpha\src\config.c
Extracting  luasec-luasec-0.7alpha\src\context.c
Extracting  luasec-luasec-0.7alpha\src\context.h
Extracting  luasec-luasec-0.7alpha\src\ec.c
Extracting  luasec-luasec-0.7alpha\src\ec.h
Extracting  luasec-luasec-0.7alpha\src\https.lua
Extracting  luasec-luasec-0.7alpha\src\luasocket
Extracting  luasec-luasec-0.7alpha\src\luasocket\LICENSE
Extracting  luasec-luasec-0.7alpha\src\luasocket\Makefile
Extracting  luasec-luasec-0.7alpha\src\luasocket\buffer.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\buffer.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\io.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\io.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\socket.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\timeout.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\timeout.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\usocket.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\usocket.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\wsocket.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\wsocket.h
Extracting  luasec-luasec-0.7alpha\src\options.h
Extracting  luasec-luasec-0.7alpha\src\options.lua
Extracting  luasec-luasec-0.7alpha\src\ssl.c
Extracting  luasec-luasec-0.7alpha\src\ssl.h
Extracting  luasec-luasec-0.7alpha\src\ssl.lua
Extracting  luasec-luasec-0.7alpha\src\x509.c
Extracting  luasec-luasec-0.7alpha\src\x509.h

Everything is Ok

Folders: 24
Files: 100
Size:       283957
Compressed: 378880
cl /MD /O2 -c -Fosrc/config.obj -IC:/Program Files (x86)/Lua/5.1/include src/config.c -DWIN32 -DNDEBUG -D_WINDOWS -D_USRDLL -DLSEC_EXPORTS -DBUFFER_DEBUG -DLSEC_API=__declspec(dllexport) -DWITH_LUASOCKET -DLUASOCKET_DEBUG -DLUASEC_INET_NTOP -DWINVER=0x0501 -D_WIN32_WINNT=0x0501 -DNTDDI_VERSION=0x05010300 -ID:\_repo\libz\openssl-master\include -Isrc/ -Isrc/luasocket
'cl' is not recognized as an internal or external command,
operable program or batch file.

Error: Build error: Failed compiling object src/config.obj

C:\Users\User>
OpenSSL found, could not execute cl command... Ok, lets prepare cl tool from my VS as google tells:

Code: Select all

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>vcvarsall x86_amd64

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>luarocks install luasec OPENSSL_INCDIR=D:\_repo\libz\openssl-master\include
Installing http://luarocks.org/repositories/rocks/luasec-0.7alpha-2.src.rock...

7-Zip 9.10 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-12-22

Processing archive: luasec-0.7alpha.tar.gz

Extracting  luasec-0.7alpha.tar

Everything is Ok

Size:       378880
Compressed: 52093

7-Zip 9.10 beta  Copyright (c) 1999-2009 Igor Pavlov  2009-12-22

Processing archive: luasec-0.7alpha.tar

Extracting  pax_global_header
Extracting  luasec-luasec-0.7alpha
Extracting  luasec-luasec-0.7alpha\.gitignore
Extracting  luasec-luasec-0.7alpha\CHANGELOG
Extracting  luasec-luasec-0.7alpha\INSTALL
Extracting  luasec-luasec-0.7alpha\LICENSE
Extracting  luasec-luasec-0.7alpha\Makefile
Extracting  luasec-luasec-0.7alpha\README.md
Extracting  luasec-luasec-0.7alpha\luasec-0.6-1.rockspec
Extracting  luasec-luasec-0.7alpha\luasec-0.7alpha-1.rockspec
Extracting  luasec-luasec-0.7alpha\luasec.sln
Extracting  luasec-luasec-0.7alpha\luasec.suo
Extracting  luasec-luasec-0.7alpha\luasec.vcproj
Extracting  luasec-luasec-0.7alpha\luasec.vcxproj
Extracting  luasec-luasec-0.7alpha\luasec.vcxproj.filters
Extracting  luasec-luasec-0.7alpha\samples
Extracting  luasec-luasec-0.7alpha\samples\README
Extracting  luasec-luasec-0.7alpha\samples\certs
Extracting  luasec-luasec-0.7alpha\samples\certs\all.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\clientA.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\clientA.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\clientA.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\clientB.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\clientB.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\clientB.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\rootA.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\rootA.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\rootA.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\rootB.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\rootB.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\rootB.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\serverA.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\serverA.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\serverA.sh
Extracting  luasec-luasec-0.7alpha\samples\certs\serverB.bat
Extracting  luasec-luasec-0.7alpha\samples\certs\serverB.cnf
Extracting  luasec-luasec-0.7alpha\samples\certs\serverB.sh
Extracting  luasec-luasec-0.7alpha\samples\chain
Extracting  luasec-luasec-0.7alpha\samples\chain\client.lua
Extracting  luasec-luasec-0.7alpha\samples\chain\server.lua
Extracting  luasec-luasec-0.7alpha\samples\chain\util.lua
Extracting  luasec-luasec-0.7alpha\samples\curve-negotiation
Extracting  luasec-luasec-0.7alpha\samples\curve-negotiation\client.lua
Extracting  luasec-luasec-0.7alpha\samples\curve-negotiation\server.lua
Extracting  luasec-luasec-0.7alpha\samples\dhparam
Extracting  luasec-luasec-0.7alpha\samples\dhparam\client.lua
Extracting  luasec-luasec-0.7alpha\samples\dhparam\params.sh
Extracting  luasec-luasec-0.7alpha\samples\dhparam\server.lua
Extracting  luasec-luasec-0.7alpha\samples\digest
Extracting  luasec-luasec-0.7alpha\samples\digest\client.lua
Extracting  luasec-luasec-0.7alpha\samples\digest\server.lua
Extracting  luasec-luasec-0.7alpha\samples\ecdh
Extracting  luasec-luasec-0.7alpha\samples\ecdh\client.lua
Extracting  luasec-luasec-0.7alpha\samples\ecdh\server.lua
Extracting  luasec-luasec-0.7alpha\samples\info
Extracting  luasec-luasec-0.7alpha\samples\info\client.lua
Extracting  luasec-luasec-0.7alpha\samples\info\server.lua
Extracting  luasec-luasec-0.7alpha\samples\key
Extracting  luasec-luasec-0.7alpha\samples\key\genkey.sh
Extracting  luasec-luasec-0.7alpha\samples\key\loadkey.lua
Extracting  luasec-luasec-0.7alpha\samples\loop-gc
Extracting  luasec-luasec-0.7alpha\samples\loop-gc\client.lua
Extracting  luasec-luasec-0.7alpha\samples\loop-gc\server.lua
Extracting  luasec-luasec-0.7alpha\samples\loop
Extracting  luasec-luasec-0.7alpha\samples\loop\client.lua
Extracting  luasec-luasec-0.7alpha\samples\loop\server.lua
Extracting  luasec-luasec-0.7alpha\samples\oneshot
Extracting  luasec-luasec-0.7alpha\samples\oneshot\client.lua
Extracting  luasec-luasec-0.7alpha\samples\oneshot\server.lua
Extracting  luasec-luasec-0.7alpha\samples\sni
Extracting  luasec-luasec-0.7alpha\samples\sni\client.lua
Extracting  luasec-luasec-0.7alpha\samples\sni\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verification
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-string
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-string\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-string\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-table
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-table\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\fail-table\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\success
Extracting  luasec-luasec-0.7alpha\samples\verification\success\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verification\success\server.lua
Extracting  luasec-luasec-0.7alpha\samples\verify
Extracting  luasec-luasec-0.7alpha\samples\verify\client.lua
Extracting  luasec-luasec-0.7alpha\samples\verify\server.lua
Extracting  luasec-luasec-0.7alpha\samples\want
Extracting  luasec-luasec-0.7alpha\samples\want\client.lua
Extracting  luasec-luasec-0.7alpha\samples\want\server.lua
Extracting  luasec-luasec-0.7alpha\samples\wantread
Extracting  luasec-luasec-0.7alpha\samples\wantread\client.lua
Extracting  luasec-luasec-0.7alpha\samples\wantread\server.lua
Extracting  luasec-luasec-0.7alpha\samples\wantwrite
Extracting  luasec-luasec-0.7alpha\samples\wantwrite\client.lua
Extracting  luasec-luasec-0.7alpha\samples\wantwrite\server.lua
Extracting  luasec-luasec-0.7alpha\src
Extracting  luasec-luasec-0.7alpha\src\Makefile
Extracting  luasec-luasec-0.7alpha\src\compat.h
Extracting  luasec-luasec-0.7alpha\src\config.c
Extracting  luasec-luasec-0.7alpha\src\context.c
Extracting  luasec-luasec-0.7alpha\src\context.h
Extracting  luasec-luasec-0.7alpha\src\ec.c
Extracting  luasec-luasec-0.7alpha\src\ec.h
Extracting  luasec-luasec-0.7alpha\src\https.lua
Extracting  luasec-luasec-0.7alpha\src\luasocket
Extracting  luasec-luasec-0.7alpha\src\luasocket\LICENSE
Extracting  luasec-luasec-0.7alpha\src\luasocket\Makefile
Extracting  luasec-luasec-0.7alpha\src\luasocket\buffer.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\buffer.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\io.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\io.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\socket.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\timeout.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\timeout.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\usocket.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\usocket.h
Extracting  luasec-luasec-0.7alpha\src\luasocket\wsocket.c
Extracting  luasec-luasec-0.7alpha\src\luasocket\wsocket.h
Extracting  luasec-luasec-0.7alpha\src\options.h
Extracting  luasec-luasec-0.7alpha\src\options.lua
Extracting  luasec-luasec-0.7alpha\src\ssl.c
Extracting  luasec-luasec-0.7alpha\src\ssl.h
Extracting  luasec-luasec-0.7alpha\src\ssl.lua
Extracting  luasec-luasec-0.7alpha\src\x509.c
Extracting  luasec-luasec-0.7alpha\src\x509.h

Everything is Ok

Folders: 24
Files: 100
Size:       283957
Compressed: 378880
cl /MD /O2 -c -Fosrc/config.obj -IC:/Program Files (x86)/Lua/5.1/include src/config.c -DWIN32 -DNDEBUG -D_WINDOWS -D_USRDLL -DLSEC_EXPORTS -DBUFFER_DEBUG -DLSEC_API=__declspec(dllexport) -DWITH_LUASOCKET -DLUASOCKET_DEBUG -DLUASEC_INET_NTOP -DWINVER=0x0501 -D_WIN32_WINNT=0x0501 -DNTDDI_VERSION=0x05010300 -ID:\_repo\libz\openssl-master\include -Isrc/ -Isrc/luasocket
Оптимизирующий компилятор Microsoft (R) C/C++ версии 19.00.23918 для x64
(C) Корпорация Майкрософт (Microsoft Corporation).  Все права защищены.

config.c
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(24): error C2449: имеется "{" в пределах области видимости файла (возможно, отсутствует заголовок функции)
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(24): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(25): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(31): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(35): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(36): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(42): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(43): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(49): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(50): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(57): error C2059: синтаксическая ошибка: }
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(124): error C2449: имеется "{" в пределах области видимости файла (возможно, отсутствует заголовок функции)
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(124): error C2059: синтаксическая ошибка: }
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(135): error C2054: требуется "(" после "OPENSSL_EXPORT_VAR_AS_FUNCTION"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(137): error C2054: требуется "(" после "BN_LLONG"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(138): error C2054: требуется "(" после "SIXTY_FOUR_BIT_LONG"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(139): error C2054: требуется "(" после "SIXTY_FOUR_BIT"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(28): error C2054: требуется "(" после "THIRTY_TWO_BIT"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(28): error C2085: uintptr_t: отсутствует в списке формальных параметров
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(39): error C2085: va_list: отсутствует в списке формальных параметров
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(106): error C2143: синтаксическая ошибка: отсутствие ")" перед "*"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(106): error C2082: переопределение формального параметра "__va_start"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(106): error C2143: синтаксическая ошибка: отсутствие ";" перед "*"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vadefs.h(106): error C2059: синтаксическая ошибка: )
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(294): error C2146: синтаксическая ошибка: отсутствие ")" перед идентификатором "_StackCookie"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(294): error C2061: синтаксическая ошибка: идентификатор "_StackCookie"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(294): error C2059: синтаксическая ошибка: ;
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(294): error C2059: синтаксическая ошибка: )
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(295): error C2146: синтаксическая ошибка: отсутствие ")" перед идентификатором "_StackCookie"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(295): error C2061: синтаксическая ошибка: идентификатор "_StackCookie"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(295): error C2059: синтаксическая ошибка: ;
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(295): error C2059: синтаксическая ошибка: )
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(299): error C2061: синтаксическая ошибка: идентификатор "__security_cookie"
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\vcruntime.h(299): error C2059: синтаксическая ошибка: ;
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(24): error C2449: имеется "{" в пределах области видимости файла (возможно, отсутствует заголовок функции)
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(24): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(25): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(31): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(35): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(36): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(42): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(43): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(49): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(50): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(57): error C2059: синтаксическая ошибка: }
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(124): error C2449: имеется "{" в пределах области видимости файла (возможно, отсутствует заголовок функции)
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(124): error C2059: синтаксическая ошибка: }
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(135): error C2054: требуется "(" после "OPENSSL_EXPORT_VAR_AS_FUNCTION"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(137): error C2054: требуется "(" после "BN_LLONG"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(138): error C2054: требуется "(" после "SIXTY_FOUR_BIT_LONG"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(139): error C2054: требуется "(" после "SIXTY_FOUR_BIT"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(24): error C2054: требуется "(" после "THIRTY_TWO_BIT"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(24): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(25): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(31): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(35): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(36): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(42): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(43): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(49): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(50): error C2018: неизвестный знак "0x40"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(122): error C2449: имеется "{" в пределах области видимости файла (возможно, отсутствует заголовок функции)
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(122): error C2059: синтаксическая ошибка: }
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(129): error C2054: требуется "(" после "I386_ONLY"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(135): error C2054: требуется "(" после "OPENSSL_EXPORT_VAR_AS_FUNCTION"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(137): error C2054: требуется "(" после "BN_LLONG"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(138): error C2054: требуется "(" после "SIXTY_FOUR_BIT_LONG"
D:\_repo\libz\openssl-master\include\openssl/opensslconf.h(139): error C2054: требуется "(" после "SIXTY_FOUR_BIT"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(135): error C2054: требуется "(" после "THIRTY_TWO_BIT"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(135): error C2085: __crt_bool: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(226): error C2085: _invalid_parameter_noinfo: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(227): error C2085: _invalid_parameter_noinfo_noreturn: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(235): error C2081: uintptr_t: недопустимое имя в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(235): error C2085: _invoke_watson: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(448): error C2085: errno_t: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(449): error C2085: wint_t: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(450): error C2085: wctype_t: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(451): error C2085: __time32_t: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(452): error C2085: __time64_t: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(459): error C2085: __crt_locale_data_public: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(465): error C2085: __crt_locale_pointers: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(467): error C2085: __crt_locale_pointers: отсутствует в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(467): error C2143: синтаксическая ошибка: отсутствие ";" перед "*"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(489): error C2061: синтаксическая ошибка: идентификатор "time_t"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt.h(489): error C2059: синтаксическая ошибка: ;
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\stddef.h(32): error C2143: синтаксическая ошибка: отсутствие "{" перед "__cdecl"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\stddef.h(33): error C2143: синтаксическая ошибка: отсутствие "{" перед "__cdecl"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\stddef.h(48): error C2143: синтаксическая ошибка: отсутствие "{" перед "__cdecl"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(48): error C2143: синтаксическая ошибка: отсутствие "{" перед "__cdecl"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(71): error C2143: синтаксическая ошибка: отсутствие "{" перед "__cdecl"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(93): error C2143: синтаксическая ошибка: отсутствие "{" перед "__cdecl"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(124): error C2146: синтаксическая ошибка: отсутствие ")" перед идентификатором "_Locale"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(124): error C2081: _locale_t: недопустимое имя в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(124): error C2061: синтаксическая ошибка: идентификатор "_Locale"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(124): error C2059: синтаксическая ошибка: ;
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(125): error C2059: синтаксическая ошибка: )
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(139): error C2146: синтаксическая ошибка: отсутствие ")" перед идентификатором "_Locale"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(139): error C2081: _locale_t: недопустимое имя в списке формальных параметров
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(139): error C2061: синтаксическая ошибка: идентификатор "_Locale"
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(139): error C2059: синтаксическая ошибка: ;
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(140): error C2059: синтаксическая ошибка: )
C:\Program Files (x86)\Windows Kits\10\include\10.0.10586.0\ucrt\corecrt_wstdlib.h(140): fatal error C1003: число ошибок превышает 100; остановка компиляции

Error: Build error: Failed compiling object src/config.obj
cl tool starts but ends with many compiler errors that I can not handle. Ok, lets try to use already compiled ssl.dll from ZeroBraneStudio-0.35. Just copied ssl.dll to C:\Program Files\LOVE and add

Code: Select all

local ssl = require("ssl")
to my love game. This one line of code bring my empty love2d game to silent quit without any console logs, so I don't understand what's wrong with that ssl.dll. Is here a way to figure it out?

Or maybe some other way to make https request without using luasec?

Or maybe something else that I missed?
Last edited by Sasha264 on Fri Jan 05, 2018 3:21 am, edited 1 time in total.
drunken_munki
Party member
Posts: 134
Joined: Tue Mar 29, 2011 11:05 pm

Re: HTTPS request in love/lua

Post by drunken_munki »

What do you mean by https request? Like a secure login or something?

Or just pulling something, like this:

Code: Select all

local http = require "socket.http"

local logo

function love.load()
   logo = http.request("https://love2d.org/style/logo.png")
   logo = love.filesystem.newFileData(logo, "logo.png")
   logo = love.graphics.newImage(logo)
end

function love.draw()
   love.graphics.draw(logo)
end
LOVE comes with a somesuch socket module.
User avatar
erasio
Party member
Posts: 118
Joined: Wed Mar 15, 2017 8:52 am
Location: Germany

Re: HTTPS request in love/lua

Post by erasio »

Requests might also fail if the server doesn't respond to http anymore or rerouts to https (like twitch.tv or google do).

The easiest way is probably to compile luasec yourself.

Each platform needs a custom compilation anyway and searching for all of them is kinda meh and unreliable. Let alone much slower.

For my twitch integration I did that around 6 months ago and it worked like a charm!

In regards to your zero bane dll. Keep in mind that you can only directly interface with c code. DLLs written in another language need proper bindings or a c api to be accessible.
User avatar
Sasha264
Party member
Posts: 131
Joined: Mon Sep 08, 2014 7:57 am

Re: HTTPS request in love/lua

Post by Sasha264 »

Thanks for responds! :awesome:

@drunken_munki
Yes, I solved initial problem using love socket module, thanks!
So.. [Solved]

@erasio,
Ok, I understand, compile luasec is the proper way.
About dll's written in another languages: is here a way to call functions from my C# library from love2d? How can I write appropriate c api for it or...? Maybe some links or search keywords?
Post Reply

Who is online

Users browsing this forum: Google [Bot] and 131 guests