Skip to content

Commit

Permalink
Added ":addTrustedRootCA()" to the httpc contexts, close #8, Added so…
Browse files Browse the repository at this point in the history
…me values in ctr.

I didn't test :addTrustedRootCA(), but it's just a simple string-to-char+size function.
  • Loading branch information
firew0lf committed Mar 12, 2016
1 parent 9db21c7 commit 6a9fbbb
Show file tree
Hide file tree
Showing 6 changed files with 38 additions and 8 deletions.
4 changes: 3 additions & 1 deletion Makefile
Expand Up @@ -38,6 +38,8 @@ APP_TITLE := ctruLua
APP_DESCRIPTION := Lua for the 3DS. Yes, it works.
APP_AUTHOR := Reuh, Firew0lf and NegiAD
ICON := icon.png
APP_VERSION := $(shell git describe --abbrev=0 --tags)
LASTCOMMIT := $(shell git rev-parse HEAD)

#---------------------------------------------------------------------------------
# options for code generation
Expand All @@ -48,7 +50,7 @@ CFLAGS := -g -Wall -O2 -mword-relocations -std=gnu11 \
-fomit-frame-pointer -ffast-math \
$(ARCH)

CFLAGS += $(INCLUDE) -DARM11 -D_3DS
CFLAGS += $(INCLUDE) -DARM11 -D_3DS -DCTR_VERSION=\"$(APP_VERSION)\" -DCTR_BUILD=\"$(LASTCOMMIT)\"

CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11

Expand Down
9 changes: 4 additions & 5 deletions sdcard/3ds/ctruLua/examples/httpc/httpc.lua
Expand Up @@ -25,19 +25,18 @@ while ctr.run() do
dls = dls + 1
end

gfx.startFrame(gfx.TOP)
gfx.start(gfx.TOP)
gfx.text(0, 0, data)
gfx.text(0, 20, "Downloaded "..dls.." times.")
gfx.endFrame()
gfx.stop()

gfx.startFrame(gfx.BOTTOM)
gfx.start(gfx.BOTTOM)
gfx.text(2, 2, "HTTP Contexts example")
gfx.text(2, 20, "The data is downloaded from '"..addr.."'.")
gfx.text(2, 30, "Press [B] to redownload.")
gfx.endFrame()
gfx.stop()

gfx.render()
end


context:close()
13 changes: 13 additions & 0 deletions source/ctr.c
Expand Up @@ -189,6 +189,19 @@ int luaopen_ctr_lib(lua_State *L) {
ctr_libs[i].load(L);
lua_setfield(L, -2, ctr_libs[i].name);
}

/***
Running version of ctrµLua. This string contains the exact name of the last (pre-)release tag.
@field version
*/
lua_pushstring(L, CTR_VERSION);
lua_setfield(L, -2, "version");
/***
Running build of ctrµLua. This string contains the last commit hash.
@field build
*/
lua_pushstring(L, CTR_BUILD);
lua_setfield(L, -2, "build");

return 1;
}
Expand Down
2 changes: 1 addition & 1 deletion source/gfx.c
Expand Up @@ -8,7 +8,7 @@ The `gfx` module.
#include <sf2d.h>
#include <sftd.h>

#include <3ds/vram.h>
//#include <3ds/vram.h>
//#include <3ds/services/gsp.h>

#include <lua.h>
Expand Down
16 changes: 16 additions & 0 deletions source/httpc.c
Expand Up @@ -218,6 +218,21 @@ static int httpc_getResponseHeader(lua_State *L) {
return 1;
}

/***
Add a trusted RootCA cert to a context.
@function :addTrustedRootCA
@tparam string DER certificate
*/
static int httpc_addTrustedRootCA(lua_State *L) {
httpcContext *context = lua_touserdata(L, 1);
u32 certsize;
u8* cert = (u8*)luaL_checklstring(L, 2, (size_t*)&certsize);

httpcAddTrustedRootCA(context, cert, certsize);

return 0;
}

// object
static const struct luaL_Reg httpc_methods[] = {
{"open", httpc_open },
Expand All @@ -229,6 +244,7 @@ static const struct luaL_Reg httpc_methods[] = {
{"close", httpc_close },
{"addPostData", httpc_addPostData },
{"getResponseHeader", httpc_getResponseHeader },
{"addTrustedRootCA", httpc_addTrustedRootCA },
{NULL, NULL}
};

Expand Down
2 changes: 1 addition & 1 deletion source/ir.c
Expand Up @@ -5,7 +5,7 @@ The `ir` module.
*/
#include <3ds/types.h>
#include <3ds/services/ir.h>
#include <3ds/linear.h>
//#include <3ds/linear.h>

#include <lualib.h>
#include <lauxlib.h>
Expand Down

0 comments on commit 6a9fbbb

Please sign in to comment.