Commit graph

109 commits

Author SHA1 Message Date
1c4733b1cc
here_doc: print error if failed to create temp file 2025-03-28 19:10:43 +01:00
a4c482e8f9
here_doc: perform variable expansion 2025-03-28 16:45:28 +01:00
Jérôme Guélen
5ff990ef50 Parsing-refactor: Determining structures. 2025-03-28 15:03:15 +01:00
88ed66e138
refactor cmdlist.num_cmds -> cmdlist.num_cmd to be more consistent 2025-03-28 14:50:37 +01:00
131ba36d93
cmdlist refactor: use cmdlist instead of command_list as a shorthand
I hope this doesn't break too much code ^^
2025-03-28 14:50:37 +01:00
56fe943efc
cmdlist: use new architecture (STUB)
I fixed the tests, and the basic functionallity of detecting pipelines works,
but detecting nested cmdgroups is not yet implemented
2025-03-28 14:50:37 +01:00
55d21196b8
cmdgroup: start implementing debug routines 2025-03-28 14:50:37 +01:00
f9aa614ef2
cmdgroup parsing: start implementing the new architecture 2025-03-28 14:50:37 +01:00
d6bb24df54
cmdgroup parsing: ensure parsing of a pipeline functions correctly 2025-03-28 14:50:37 +01:00
d8dd1613c8
cmdgroup parsing: handle parsing a single cmdlist (badly) 2025-03-28 14:50:37 +01:00
9707316085
tests: put usefull test functions in own files 2025-03-28 14:50:37 +01:00
f5ae3a5d8d
tests: add a test_ prefix to all files that contain actual tests
This will make it easier to differentiate with utility files, as the next change
will add sevral
2025-03-28 14:50:37 +01:00
bc5be67bf6
cmdgroup parsing: parse empty wordlist 2025-03-28 14:50:37 +01:00
10b1ac6711
expansion: add some more test cases 2025-03-21 14:07:00 +01:00
Jérôme Guélen
00f27ae05c
Expansion: fixed the algo for star expansion. 2025-03-21 10:44:39 +01:00
41c9548934
some pair debugging 2025-03-21 10:44:39 +01:00
Jérôme Guélen
b58848e091
Expansion: fix but still a problem matching '.'
Problem in the coherence of behaviour regarding ownership with star expansion
fixed.
2025-03-21 10:42:46 +01:00
Jérôme Guélen
da06c0d4e0
Expansion: one little problem remaining with * expansion and . 2025-03-21 10:16:00 +01:00
Jérôme Guélen
2da7f03a66
Expansion: Test directory for future portability
Tests to be readjusted for portability.
2025-03-21 10:15:10 +01:00
f0755cd6c4
tests: some fixes 2025-03-21 10:14:37 +01:00
Jérôme Guélen
ea3ecaaf31
Expansion: temporarily sharing broken version 2025-03-21 10:14:37 +01:00
Jérôme Guélen
95d9f6282a
Expansion: refactor in progress 2025-03-21 10:10:30 +01:00
63df02aec5
fix: does not compile 2025-03-21 10:09:32 +01:00
Jérôme Guélen
fa383c4f17
Expansion: variable substitution V1 attempt
Norm has been checked, test are not up to date. Wildcard management and
filename expansions still to be done.
2025-03-21 10:09:28 +01:00
Jérôme Guélen
e348040ea4
Subst: A norm NON-compliant and incomplete version
The code does not update flags yet and is to be refactored to conform to the
norm.
Tests required but needing a new version of the wordsplitting code.
2025-03-21 10:07:32 +01:00
d30a39d907
here_doc: prepare handling for variable expansion in here_doc
This is waiting on #23 to be merged to work
2025-03-11 14:58:13 +01:00
47f449d804
here_doc: handle unexpected EOF 2025-03-11 14:58:13 +01:00
7c6d061c6c
here_doc: handle input with correct end marker 2025-03-11 14:58:13 +01:00
a6d1386574
here_doc: handle input with only an end marker 2025-03-11 14:58:13 +01:00
442aa85e84
here_doc: null marker returns error 2025-03-11 14:58:13 +01:00
99babbf6d2
here_doc: generate random filenames 2025-03-11 14:58:13 +01:00
cae2dfe4d6
here_doc: basic setup 2025-03-11 14:58:13 +01:00
d196649106
redirection parsing: handle other types of redirection 2025-03-11 14:58:13 +01:00
47ac767f2a
redirection parsing: check for null in arguments 2025-03-11 14:58:13 +01:00
5df876bba3
redirection parsing: detect malformed redirection 2025-03-10 16:57:02 +01:00
06dd3c3e83
redirection parings: handle redirections not at start 2025-03-10 16:34:15 +01:00
4116c2d92f
wordlist: add destroy_idx and pop_idx functions 2025-03-10 16:08:59 +01:00
a20ea8315d
redirection parsing: handle > at start of wordlist 2025-03-10 15:10:18 +01:00
cf517bb7f8
redirection parsing: define types in own files 2025-03-10 15:10:18 +01:00
06ebcf132a
redirection parsing: handle commands with no redirections 2025-03-10 15:10:18 +01:00
d30db395a0 cmdlist parsing: ensure parsing works for a single simple command 2025-03-10 13:22:29 +00:00
4c37ec5188 tests: put test back in a sensible order 2025-03-10 13:22:29 +00:00
e6a9010362 tests: make leak_check do nothing when compiled without LSAN 2025-03-10 13:22:29 +00:00
7102998dce leak: resolve the rest of the memory leaks 2025-03-10 13:22:29 +00:00
69b247697c leak: resolve one memory leak 2025-03-10 13:22:29 +00:00
5bf4bb8d6a tests: do lsan test after each test case 2025-03-10 13:22:29 +00:00
9ffde46adc tests: show test function in output 2025-03-10 13:22:29 +00:00
3778d0a7ee cmdlist_from_wordlist: make a copy of a wordlist 2025-03-10 13:22:29 +00:00
14f7e523d3 debug: remove debug prints 2025-03-10 13:22:29 +00:00
ccbd89708f tests: add simple reproducer for cmdlist use-after-free 2025-03-10 13:22:29 +00:00