Size: a a a

2020 February 13

EG

Emmanuel Goldstein in rust_offtopic
В _start всё прилетает на стеке
источник

EG

Emmanuel Goldstein in rust_offtopic
argc, argv, envp в таком порядке
источник

p

polunin.ai in rust_offtopic
блять в VSCode нет плагина под пхп 5.6
источник

p

polunin.ai in rust_offtopic
я в ахуе
источник

DF

Dollar Føølish in rust_offtopic
Пиши на седьмом как на пятом
источник

BD

Berkus Decker in rust_offtopic
Emmanuel Goldstein
В _start всё прилетает на стеке
логично
источник

BD

Berkus Decker in rust_offtopic
Emmanuel Goldstein
%rax по конвенции пустой
пустой = нулевой или рандомный?
источник

EG

Emmanuel Goldstein in rust_offtopic
Вот у меня есть программа, которая принтит аргументы командной строки и переменные окружения.
https://gist.github.com/GoldsteinE/fa4997533b70bbcd69ab4a695252416c
источник

p

polunin.ai in rust_offtopic
Dollar Føølish
Пиши на седьмом как на пятом
он обратно совместим?
источник

EG

Emmanuel Goldstein in rust_offtopic
Berkus Decker
пустой = нулевой или рандомный?
Нулевой, обнуляется перед мейном.
источник

EG

Emmanuel Goldstein in rust_offtopic
Emmanuel Goldstein
Нулевой, обнуляется перед мейном.
Вроде как.
У меня нет под рукой исходников crt0.s, увы.
источник

EG

Emmanuel Goldstein in rust_offtopic
Emmanuel Goldstein
Вроде как.
У меня нет под рукой исходников crt0.s, увы.
Дизассемблировал libc, в функции __libc_start_main конец выглядит так:
Я полагаю, что 27106-27108 это как раз обнуление %eax и вызов мейн.
   27106:  31 c0                  xor    %eax,%eax
  27108:  ff 92 d0 01 00 00      callq  *0x1d0(%rdx)
  2710e:  e9 ba fe ff ff         jmpq   26fcd <__libc_start_main+0x9d>
  27113:  66 2e 0f 1f 84 00 00   nopw   %cs:0x0(%rax,%rax,1)
  2711a:  00 00 00
  2711d:  0f 1f 00               nopl   (%rax)
источник

BD

Berkus Decker in rust_offtopic
ну да
источник

BD

Berkus Decker in rust_offtopic
это получается в eax return code чтоль
источник

BD

Berkus Decker in rust_offtopic
чтобы пустой мейн нормально завершался
источник

EG

Emmanuel Goldstein in rust_offtopic
А может быть, кстати, да.
источник

EG

Emmanuel Goldstein in rust_offtopic
Ещё же бывает void main()
источник

BD

Berkus Decker in rust_offtopic
Emmanuel Goldstein
Ещё же бывает void main()
а это уже не по стандарту
источник

BD

Berkus Decker in rust_offtopic
возвращает то оно все равно в ОС код ошибки, даже если объявлено void
источник

EG

Emmanuel Goldstein in rust_offtopic
Berkus Decker
а это уже не по стандарту
Но бывает
источник