mirror of
https://github.com/lunarmodules/luasocket.git
synced 2025-07-13 14:14:30 +02:00
Compiles with Lua 5.1.4 and Lua 5.2.0-beta, although the makefile needs sorting out to take maybe a version number and also the local paths need removing.
This commit is contained in:
30
src/mime.c
30
src/mime.c
@ -48,7 +48,7 @@ static size_t qpencode(UC c, UC *input, size_t size,
|
||||
static size_t qppad(UC *input, size_t size, luaL_Buffer *buffer);
|
||||
|
||||
/* code support functions */
|
||||
static luaL_reg func[] = {
|
||||
static luaL_Reg func[] = {
|
||||
{ "dot", mime_global_dot },
|
||||
{ "b64", mime_global_b64 },
|
||||
{ "eol", mime_global_eol },
|
||||
@ -135,7 +135,7 @@ static int mime_global_wrp(lua_State *L)
|
||||
left = length;
|
||||
luaL_addstring(&buffer, CRLF);
|
||||
}
|
||||
luaL_putchar(&buffer, *input);
|
||||
luaL_addchar(&buffer, *input);
|
||||
left--;
|
||||
break;
|
||||
}
|
||||
@ -374,9 +374,9 @@ static void qpsetup(UC *cl, UC *unbase)
|
||||
\*-------------------------------------------------------------------------*/
|
||||
static void qpquote(UC c, luaL_Buffer *buffer)
|
||||
{
|
||||
luaL_putchar(buffer, '=');
|
||||
luaL_putchar(buffer, qpbase[c >> 4]);
|
||||
luaL_putchar(buffer, qpbase[c & 0x0F]);
|
||||
luaL_addchar(buffer, '=');
|
||||
luaL_addchar(buffer, qpbase[c >> 4]);
|
||||
luaL_addchar(buffer, qpbase[c & 0x0F]);
|
||||
}
|
||||
|
||||
/*-------------------------------------------------------------------------*\
|
||||
@ -406,7 +406,7 @@ static size_t qpencode(UC c, UC *input, size_t size,
|
||||
qpquote(input[0], buffer);
|
||||
luaL_addstring(buffer, marker);
|
||||
return 0;
|
||||
} else luaL_putchar(buffer, input[0]);
|
||||
} else luaL_addchar(buffer, input[0]);
|
||||
break;
|
||||
/* might have to be quoted always */
|
||||
case QP_QUOTED:
|
||||
@ -414,7 +414,7 @@ static size_t qpencode(UC c, UC *input, size_t size,
|
||||
break;
|
||||
/* might never have to be quoted */
|
||||
default:
|
||||
luaL_putchar(buffer, input[0]);
|
||||
luaL_addchar(buffer, input[0]);
|
||||
break;
|
||||
}
|
||||
input[0] = input[1]; input[1] = input[2];
|
||||
@ -430,7 +430,7 @@ static size_t qppad(UC *input, size_t size, luaL_Buffer *buffer)
|
||||
{
|
||||
size_t i;
|
||||
for (i = 0; i < size; i++) {
|
||||
if (qpclass[input[i]] == QP_PLAIN) luaL_putchar(buffer, input[i]);
|
||||
if (qpclass[input[i]] == QP_PLAIN) luaL_addchar(buffer, input[i]);
|
||||
else qpquote(input[i], buffer);
|
||||
}
|
||||
if (size > 0) luaL_addstring(buffer, EQCRLF);
|
||||
@ -500,7 +500,7 @@ static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer) {
|
||||
c = qpunbase[input[1]]; d = qpunbase[input[2]];
|
||||
/* if it is an invalid, do not decode */
|
||||
if (c > 15 || d > 15) luaL_addlstring(buffer, (char *)input, 3);
|
||||
else luaL_putchar(buffer, (c << 4) + d);
|
||||
else luaL_addchar(buffer, (c << 4) + d);
|
||||
return 0;
|
||||
case '\r':
|
||||
if (size < 2) return size;
|
||||
@ -508,7 +508,7 @@ static size_t qpdecode(UC c, UC *input, size_t size, luaL_Buffer *buffer) {
|
||||
return 0;
|
||||
default:
|
||||
if (input[0] == '\t' || (input[0] > 31 && input[0] < 127))
|
||||
luaL_putchar(buffer, input[0]);
|
||||
luaL_addchar(buffer, input[0]);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@ -593,7 +593,7 @@ static int mime_global_qpwrp(lua_State *L)
|
||||
left = length;
|
||||
luaL_addstring(&buffer, EQCRLF);
|
||||
}
|
||||
luaL_putchar(&buffer, *input);
|
||||
luaL_addchar(&buffer, *input);
|
||||
left--;
|
||||
break;
|
||||
default:
|
||||
@ -601,7 +601,7 @@ static int mime_global_qpwrp(lua_State *L)
|
||||
left = length;
|
||||
luaL_addstring(&buffer, EQCRLF);
|
||||
}
|
||||
luaL_putchar(&buffer, *input);
|
||||
luaL_addchar(&buffer, *input);
|
||||
left--;
|
||||
break;
|
||||
}
|
||||
@ -636,7 +636,7 @@ static int eolprocess(int c, int last, const char *marker,
|
||||
return c;
|
||||
}
|
||||
} else {
|
||||
luaL_putchar(buffer, c);
|
||||
luaL_addchar(buffer, c);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@ -676,7 +676,7 @@ static int mime_global_eol(lua_State *L)
|
||||
\*-------------------------------------------------------------------------*/
|
||||
static size_t dot(int c, size_t state, luaL_Buffer *buffer)
|
||||
{
|
||||
luaL_putchar(buffer, c);
|
||||
luaL_addchar(buffer, c);
|
||||
switch (c) {
|
||||
case '\r':
|
||||
return 1;
|
||||
@ -684,7 +684,7 @@ static size_t dot(int c, size_t state, luaL_Buffer *buffer)
|
||||
return (state == 1)? 2: 0;
|
||||
case '.':
|
||||
if (state == 2)
|
||||
luaL_putchar(buffer, '.');
|
||||
luaL_addchar(buffer, '.');
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user