Code Monkey home page Code Monkey logo

minishell's People

Contributors

3lswear avatar talyx avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

kenzlee51

minishell's Issues

leaks ?? 🤔🤔

Screenshot_20211025_021929

Screenshot_20211025_021919

Screenshot_20211025_021906

Screenshot_20211025_021756

Screenshot_20211025_021732

Комментарии, советы, пожелания
впринципе они все still reachable

test

bash output
a

minishell output
b

Комментарии, советы, пожелания
FIX!!!!!!!!!!!!!!!!!!

segfault

Command

export a2=' a3

bash output

-

minishell output

output

Комментарии, советы, пожелания
без санитайзера

nvim not work !! hello !?

Command
ls -la | nvim

bash output
красивое окно неовима с выводом

minishell output
что-то сломаное

Комментарии, советы, пожелания
сюда

multiple redirs leak

Command

ls -la > popa > pipa

leak

Комментарии, советы, пожелания
сюда

vars_subst problem

Command

export echo="echo hello"
$echo

bash output

hello

minishell output


Комментарии, советы, пожелания
не работает vars_substitute
image

signal

Command

ctrl + c
echo $?

bash output

130

minishell output

?

Комментарии, советы, пожелания
сюда

var expands with no whitespace

Command

export a2=' a3'
export a1=hello$a2=poka
echo $a1

bash output

hello a3=poka

minishell output

helloa3=poka

Комментарии, советы, пожелания
image

Ошибка парсинга $

Command

echo $SHELL

bash output

/usr/bin/zsh

minishell output

SESSION_ID=156ed727729d41c4a178879851d031f0

Комментарии, советы, пожелания
Screenshot from 2021-10-22 12-24-29

еще и приставку "SHELL" съел

echo пустая строка

Command

echo "" word | xxd

bash output

00000000: 2077 6f72 640a                            word.

minishell output

00000000: 776f 7264 0a                             word.

Комментарии, советы, пожелания
нет пробела,

сколько пустых строк, столько и пробелов (видимо)

не прекращает работу в конце файла

Command
не из минишелла:

echo -e 'echo kek > /tmp/file1 \n echo kek2' | ./minishell

bash output

*завершение работы*

minishell output

*промпт и ждет ввода*

Комментарии, советы, пожелания
появилось с обновой

SEGV

Command

cat <<

bash output

error

minishell output

error + segv

Комментарии, советы, пожелания
Screenshot from 2021-10-22 15-13-03

cat < /root/.bashrc

Command
cat < /root/.bashrc

bash output
*error*

minishell output
error + stdin висит

Комментарии, советы, пожелания
сюда

> > > > > bad parse

Command

> > > > > > > > |

bash output

bash: syntax error near unexpected token `>'

minishell output

jopa

Комментарии, советы, пожелания
не ставится T_SPEC | T_REDIR на '>'

minishell error code

Command

echo asdf > >
echo $?

bash output

2

minishell output

102

Комментарии, советы, пожелания
все 2

heap uaf redir --

Command

'export' 'q'=e "w"=c e="h" r='o' 't'='x' "y"="p" u=r i=t
>fil$q'1' e$w"ho" s$i"r"ing f$r$u file1
(>file1 echo string for file1)

bash output

output

minishell output

UAF

Комментарии, советы, пожелания
сюда

Парсинг редиректов

Command

"pwd >a1>a2>a3; 
echo s1 >q1 s2>q2 s3; 
cat a2; 
cat a3; 
cat q1; 
cat q2; "

bash output
output
Screenshot from 2021-10-22 12-54-14

minishell output
Screenshot from 2021-10-22 12-54-55

Комментарии, советы, пожелания
Как на мой взгляд должно распарситься(в таком случае результат будет как в баше):

echo s1 >q1 s2>q2 s3; 
command->path = echo
command->arg = s1 s2 s3
command->redir->out = q1, q2

в таком случае я сначала создам файл q1 и сделаю редирект туда, а потом создам файл q2 и финальный редирект туда

Значение $OLDPWD из $PWD

Command

export OLDPWD=/
cd
cd -

bash output

cd -> /

minishell output

cd -> (real old pwd)

Комментарии, советы, пожелания
сюда

empty PATH leak

Command

unset PATH
ls

bash output

output

minishell output

output

Комментарии, советы, пожелания
Screenshot from 2021-10-21 22-50-14

Ошибка парсинга из $

Command
export TEST=lol;
TEST$TEST=lol$TEST

bash output
TESTlol=lollol: command not found

minishell output
minishell: TESTlol: No such file or directory

Комментарии, советы, пожелания
TEST$TEST=lol$TEST -> парсится как TESTlol
а нужно в TESTlol=lollol

pwd >a>b>c

Command

pwd >a>b>c

bash output

output

minishell output

output

Комментарии, советы, пожелания

Ошибка редиректов

Command
>
|
<

bash output
bash: syntax error near unexpected token

minishell output
SEGV

Комментарии, советы, пожелания
На этапе парсинга выдавать ошибку о том что токенам некуда редиректить или неоткуда редиректить

$PWD не меняется

Command

cd  /tmp
echo $PWD

bash output

/tmp

minishell output

*старая директория*

Комментарии, советы, пожелания
сюда

внезапный exit

Command

> /tmp/output
> /tmp/output
> /tmp/output

bash output

*ничего*

minishell output

вылет

Комментарии, советы, пожелания
???

Парсинг из $

Command
echo $TEST$TEST$TEST=lol$TEST

bash output
=lol

minishell output
minishell: lol: No such file or directory

Комментарии, советы, пожелания
На сколько я понял у тебя больше 2 перменных подряд не парсится

cat < Makefile > /tmp/output

bash output
Пустой вывод, Makefile записан в /tmp/output

minishell output
вываливает makefile в stdout, /tmp/output не меняется

Комментарии, советы, пожелания
флаг pipe должен быть установлен в 0
поля структуры command должны быть заполнены следующим образом
command->path = cat
command->red->in = Makefile
command->red->out=/tmp/output

unset PATH

Command

unset PATH
ls
echo $?

bash output


minishell output


Комментарии, советы, пожелания
сюда

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.