
Рома
26.08.2017
17:16:25
Я зашел такой в LuaJIT-2.1.0-beta3/src, тут в Makefile раскомментил XCFLAGS+= -DLUAJIT_ENABLE_GC64, что делаю не так?
Правда там нет configure, только make && make install

Philipp
26.08.2017
17:51:12
Здесь кто-нибудь парсил дату-время с учетом таймзоны? (GMT)
strptime вообще отказывается таймзону воспринимать

Рома
28.08.2017
00:46:47
А я такой запустил openresty с luajit beta 3 с флагом безлимитной памяти! И знаете что?
Невероятно просто какие баги вылезают!
В цикле таком
i = 0
while true
somecode...
i += 1
когда память прилично заполнилась ffi'евскими данными, i нагло отказывалась увеличиваться, пришлось в конце цикла убеждать её увеличиться:
was = i
i += 1
if was == i
i += 1
Но самое удевительное случилось в другом цикле, когда n = 0, потом n += 1, то n принимала непредсказуемые значения вроде 6.001231e-123
пришлось
int = ffi.new 'int'
xor = bit.bxor
-- перед циклом
int = xor int, int
и потом tonumber ему делать где нужно.
Мораль басни: если хочешь ffi, то придется ffi'ить даже то, что не хочешь, если хочешь накинуть флагов в бету - будь готов к безудержному отладочному веселью!

Google

Snusmumriken
28.08.2017
02:00:09
Бета же.

Vadim
28.08.2017
06:50:37

Alexey
28.08.2017
06:53:47
На сколько я понял LuaJIT испрользет сейчас github.
https://github.com/LuaJIT/LuaJIT/issues

Vadim
28.08.2017
06:56:01
я сомневаюсь, что Рома будет делать пулл-реквест для фикса зарепорченного issue, а в мыллисте больше шанс найти того кто пофиксит :)

annelin
28.08.2017
07:02:19
а зачем опенрести?
глючное говно
чем это лучше ванильного нджинха?

Vadim
28.08.2017
11:26:25
> нджинх
ты б это

annelin
28.08.2017
11:26:37
энджиных

Vadim
28.08.2017
11:26:40
или крестик или трусы
там нет "х"
там есть "икс"

Google

Vadim
28.08.2017
11:26:55
энджин икс

annelin
28.08.2017
11:26:59
ну дак да

Vadim
28.08.2017
11:27:15
ну и это

annelin
28.08.2017
11:27:25
ну так по теме то есть чё?

Vadim
28.08.2017
11:27:55
ну, опенрести так-то нинужен

annelin
28.08.2017
11:28:07
ну я просто пытался раз 5 его заводить

Vadim
28.08.2017
11:28:09
он для слабаков, которые не могут пропатчить NginX самостоятельно

annelin
28.08.2017
11:28:20
в 90% случаев он просто сегфолтился
а зачем его патчить?
я чёт не понимаю
или что

Vadim
28.08.2017
11:28:43
он не всегда совместим с lua-модулем

annelin
28.08.2017
11:28:53
annelin@westfall:~$ apt-cache show libnginx-mod-http-lua
Package: libnginx-mod-http-lua
Source: nginx
Version: 1.10.3-1+deb9u1
Installed-Size: 500
Maintainer: Debian Nginx Maintainers <pkg-nginx-maintainers@lists.alioth.debian.org>
Architecture: amd64
Depends: libnginx-mod-http-ndk (= 1.10.3-1+deb9u1), nginx-common (= 1.10.3-1+deb9u1), libc6 (>= 2.14), libluajit-5.1-2
Description-en: Lua module for Nginx
Embed Lua runtime into nginx.

Vadim
28.08.2017
11:28:54
ну и с другими няшномодулями
> 1.10.3
нутыпонел

annelin
28.08.2017
11:29:20
неа
не понял
типа, протух?


Vadim
28.08.2017
11:29:38
Установленные версии: 1.13.4(mainline)[2](01:07:28 17.08.2017)(aio http http-cache http2 luajit mail pam pcre pcre-jit perftools rrd ssl static stream systemtap threads vim-syntax -debug -dtls -libatomic -selinux ELIBC="-FreeBSD" NGINX_MODULES_HTTP="access addition ajp array_var auth_basic auth_ldap auth_pam auth_request autoindex browser cache_purge charset coolkit ctpp dav dav_ext degradation drizzle echo empty_gif encrypted_session enmemcache ey_balancer fancyindex fastcgi flv form_input geo geoip gunzip gzip gzip_static headers_more hls_audio iconv image_filter limit_conn limit_req lua lua_upstream map memc memcached metrics mirror mp4 naxsi nchan ndk njs pagespeed passenger perl postgres proxy push_stream python random_index rdns rds_csv rds_json realip redis referer replace_filter rewrite rrd scgi secure_link set_misc slice slowfs_cache split_clients srcache ssi sticky stub_status sub supervisord tcpproxy upload_progress upstream_check upstream_hash upstream_ip_hash upstream_keepalive upstream_least_conn upstream_zone userid uwsgi v2 xslt xss -passenger_enterprise -security" NGINX_MODULES_MAIL="imap pop3 smtp" NGINX_MODULES_STREAM="access dtls geo geoip limit_conn lua map python realip return split_clients ssl_preread upstream_hash upstream_least_conn upstream_zone" RUBY_TARGETS="ruby23 ruby24 -ruby22")
Домашняя страница: http://sysoev.ru/nginx/
Описание: Robust, small and high performance http and reverse proxy server

Google

annelin
28.08.2017
11:29:45
аа
окей
что-то полезное есть в новых релизах?
если да, можно подключить бэкпорты
если нет, это просто дроч на циферки
security-апдейты бэкпортируются в стабильную версию

Vadim
28.08.2017
11:30:18
угу
через 50 лет

annelin
28.08.2017
11:30:24
не, сразу
дебиан же

Vadim
28.08.2017
11:30:46
я уже вот сколько лет наблюдаю за списком рассылки

annelin
28.08.2017
11:30:48
в openssh закрыли уязвимость через 3 часа после обнаружения

Vadim
28.08.2017
11:31:13
между письмами о новых релизах с закрытыми CVE и релизом в дистрорепах доебанобунт проходит слишком много времени

annelin
28.08.2017
11:31:20
> бунт

Vadim
28.08.2017
11:31:31
собственно, отчасти поэтому, NgX'оводы сами начали держать свои репы
> бунт
да, я объединил их в одну группу
потому что в 90% случаев мейнтейнеры одни и те же люди

annelin
28.08.2017
11:36:37
зачем нужна бунта с её говнопатчами, если есть нормальный стабильный дебиан, который не отваливается от обновлений между релизами, с вменяемыми меинтейнерами и поддержкой?
хотя, насчёт вменяемых разрабов - отчасти уже неправда
после запила systemd и иже с ними

Google

Group Butler [beta]
28.08.2017
13:10:08
Добро пожаловать в чат pro.lua, Денис! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Денис
28.08.2017
13:10:26
Ребят, всем привет!
Запускается интересный проект - аренда мощностей компьютеров для облачного гейминга.
Сейчас идёт набор на тестовый запуск.
Нужно 10 машин с параметрами:
Процессор: i5 и выше ( Intel / AMD )
Видео-Карта: 1 GB+ , высокая частота шины (NVidia / AMD )
Оперативная память: 8GB+
Жесткий диск: от 600 GB и пропускной способностью 1600+
У кого есть такая машинка и кому интересно после на ней зарабатывать, пишите в личку. Отвечу на все вопросы

fgntfg
28.08.2017
13:12:06
1. причем тут луа?


Snusmumriken
28.08.2017
13:20:39
2. Зачем кому-то давать свою машину в юзание? У меня, например, такая машинка - основной рабочий инструмент. А если кто-то и будет покупать такие железки - наверное будет использовать как можно чаще, ибо железки - дорогие. Тут уж не дашь другим в облаке поиграть.
3. Качество интернета учли? Тот факт что чужая машинка может находиться в Сибири, подключённая к 3g, и пинг - омерзительный?
Ну, просто если бы я был организатором подобного счастья - я бы развернул парк серверов, которые должны это считать, ибо так достигается хоть какая-то надёжность. В домах обычных людей - отключается интернет, отключается электричество (эти компы ещё и жрут огромные объёмы всего подряд), интернет сам по себе херового качества и всё такое. А переключать игрулю на лету с одной машины на другую - это надо виртуализацию ебошить (и дамп памяти каждые N секунд переносить туда-сюда, на какие-то свои серверы, что резко снижает производительность, повышает энергопотребление и бешеный траффик), в момент переключения - у играющего лаги бешеные, или заставочка: "Подождите, сервер переподключается!".
В общем, имхо, тема аренды пользовательских компов хороша для, например, проверки транзакций биткоинов (ибо не важно, включён ли в данный момент пека, если половина из всех компов в сети ответила положительно - транзакция прошла), но вот для стриминга - хреновато.
Хотя ещё я думаю что это - бот.


Денис
28.08.2017
14:23:04
Нет, не бот. Кому интересно
https://vk.com/wall7425747_3360

Alexander
28.08.2017
15:04:48

Group Butler [beta]
29.08.2017
07:51:32
Добро пожаловать в чат pro.lua, Vlad! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Saphire
29.08.2017
16:30:13
Где-то на хабре было кстати

Admin
ERROR: S client not available

Saphire
29.08.2017
16:30:23
Ну, "гиктаймс"

annelin
30.08.2017
10:04:56
твоё лицо, когда сканер обнаруживает SQL-инъекцию
ты отдаёшь 300€ за детальное описание
а оказывается, что ты наебал сам себя :>

Vadim
30.08.2017
10:34:58
лол
алсо, 300€ за детальное описание - ппц

annelin
30.08.2017
10:36:07
за лицензию сканера, там не только описание
неограниченое кол-во сканов и т.д.
сканер полезный, справедливости ради, нашёл пару XSS, но это было видно и из бесплатной версии

Мерлин
30.08.2017
11:50:42
[last news]
Lua code: security overview and practical approaches to static analysis [pdf](http://spw17.langsec.org/papers/costin-lua-static-analysis.pdf)

Google

Group Butler [beta]
30.08.2017
14:13:22
Добро пожаловать в чат pro.lua, Red! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Snusmumriken
30.08.2017
14:17:46
Ну блин, в любых яп доступны sql-инъекции, если не экранировать пользовательскую фигню и не проверять права доступа и прочую лабудонь.
function findUserMessages(text)
data = sql.exec('select * from textmessages where text contains '..text)
return data
end
Ну типа везде где есть прямая конкатенация - стопудово есть шанс инъекции.
В sql, помнится, можно экранировать через '`'.
Ну, типа этот вариант как бы должен быть не так уязвим.
function findUserMessages(text)
local req = 'select * from msg where text contains `%s`'
data = sql.exec(req:format(text:gsub('`', '#≈')))
return data:gsub('#≈', '`')
end

Рома
30.08.2017
14:23:14
gsub(val, '"', '\\"')
\\" — вроде достаточно, нет?

Snusmumriken
30.08.2017
14:23:47
Ну, экранирование в sql (которое полностью нивелирует все остальные управляющие символы) - это апостроф. Достаточно заменять апострофы в пользовательском тексте, на остальное - начихать.

Рома
30.08.2017
14:24:39
никогда апострофов не видел! можно ссылку?
пишу под постгрес
и правда, в mysql текст апострофами обозначается! но можно ведь их изящнее экранировать, чем #≈, mysql не всегда можно просто заменить

Alexey
30.08.2017
14:29:08
Есть ситуации где это может не помочь
зависит от СУБД, кодировки бд, параметров подключения
Используйте параметры и не будет проблем
Так же это удобнее и читаемее на мой взляд

annelin
30.08.2017
14:30:57
если в постгресе текст заключен в кавычки, что можно еще делать кроме экранирования кавычек?

Рома
30.08.2017
14:30:58
Я вот когда текстовый параметр вставляю в sql, заменяю все ' на '', по-моему, инъекцировать тут вовсе ничего не выйдет. В других базах другие кавычки, смысл тот же

annelin
30.08.2017
14:31:33
where test = 'something'
заменяем все ' на входе на ''
что еще сделать можем?

Snusmumriken
30.08.2017
14:32:22
Ну да, общая суть примерно такая.
where test = ('"%s"'):format(something:gsub('"', '\\""'))

annelin
30.08.2017
14:33:03
ну я на инпуте извне все ' заменяю на ''

Alexey
30.08.2017
14:35:28
https://siderite.blogspot.com/2013/01/why-doubling-single-quotes-is-not.html