Working on ASST2 targets.
This commit is contained in:
		
							
								
								
									
										13
									
								
								test161/tests/stability/crash/crash-allS.t
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								test161/tests/stability/crash/crash-allS.t
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
			
		||||
---
 | 
			
		||||
name: "Crash-all Shell Test"
 | 
			
		||||
description:
 | 
			
		||||
  Tests whether your system correctly handles a variety of
 | 
			
		||||
  illegal attempts from userspace processes to access resources that
 | 
			
		||||
  do not belong to it. Please see userland/testbin/crash for more info.
 | 
			
		||||
  Runs it from the shell.
 | 
			
		||||
tags: [stability, crash, crash-fork]
 | 
			
		||||
depends: [shell, /asst2/process/forktest.t]
 | 
			
		||||
sys161:
 | 
			
		||||
  ram: 4M
 | 
			
		||||
---
 | 
			
		||||
$ /testbin/crash *
 | 
			
		||||
							
								
								
									
										10
									
								
								test161/tests/stability/crash/crash-template
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								test161/tests/stability/crash/crash-template
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
---
 | 
			
		||||
name: "Crash-template Test"
 | 
			
		||||
description:
 | 
			
		||||
  Tests whether your system correctly handles a variety of
 | 
			
		||||
  illegal attempts from userspace processes to access resources that
 | 
			
		||||
  do not belong to it. Please see userland/testbin/crash for more info.
 | 
			
		||||
tags: [stability, crash]
 | 
			
		||||
depends: [console]
 | 
			
		||||
---
 | 
			
		||||
p /extratests/crash-template
 | 
			
		||||
							
								
								
									
										54
									
								
								test161/tests/stability/crash/script.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								test161/tests/stability/crash/script.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
import os,sys
 | 
			
		||||
import subprocess
 | 
			
		||||
 | 
			
		||||
RANGE=[chr(i) for i in range(ord('a'), ord('p'))]
 | 
			
		||||
 | 
			
		||||
# First create crash-a/b/c.t files
 | 
			
		||||
template = open('crash-template').read()
 | 
			
		||||
 | 
			
		||||
def add_sys161_opts(content, sys161_opts):
 | 
			
		||||
	content = content.split('\n')
 | 
			
		||||
	idx = content[1:].index('---') + 1
 | 
			
		||||
	content.insert(idx, sys161_opts.strip())
 | 
			
		||||
	content = '\n'.join(content)
 | 
			
		||||
	return content
 | 
			
		||||
 | 
			
		||||
def create_crash(char, sys161_opts=None):
 | 
			
		||||
	content = template.replace('-template', '-%s' % char)
 | 
			
		||||
	content = content.replace(', crash]', ', crash-fork]')
 | 
			
		||||
	content = content.replace('[console]', '[console, /asst2/process/forktest.t]')
 | 
			
		||||
	if sys161_opts:
 | 
			
		||||
		content = add_sys161_opts(content, sys161_opts)
 | 
			
		||||
 | 
			
		||||
	with open('crash-%s.t' % char, 'w') as f:
 | 
			
		||||
		f.write(content)
 | 
			
		||||
 | 
			
		||||
	# now do the F version
 | 
			
		||||
	content = template.replace('-template', '-%sF' % char)
 | 
			
		||||
	if sys161_opts:
 | 
			
		||||
		content = add_sys161_opts(content, sys161_opts)
 | 
			
		||||
	with open('crash-%sF.t' % char, 'w') as f:
 | 
			
		||||
		f.write(content)
 | 
			
		||||
 | 
			
		||||
for char in RANGE:
 | 
			
		||||
	create_crash(char)
 | 
			
		||||
 | 
			
		||||
# Now do the 'all'
 | 
			
		||||
sys161_opts = \
 | 
			
		||||
'''
 | 
			
		||||
sys161:
 | 
			
		||||
  ram: 2M
 | 
			
		||||
'''
 | 
			
		||||
create_crash('all', sys161_opts)
 | 
			
		||||
 | 
			
		||||
#p = subprocess.Popen('ls *.t', shell=True, stdout=subprocess.PIPE)
 | 
			
		||||
#stdout, stderr = p.communicate()
 | 
			
		||||
#files = stdout.strip().split('\n')
 | 
			
		||||
#
 | 
			
		||||
#for f in files:
 | 
			
		||||
#	name, ext = os.path.splitext(f)
 | 
			
		||||
#
 | 
			
		||||
#	new_file = name + 'F' + ext
 | 
			
		||||
#	letters = name[name.index('-'):]
 | 
			
		||||
#	subprocess.check_call('cp %s %s' % (f, new_file), shell=True)
 | 
			
		||||
#	subprocess.check_call('''sed -i 's/%s/%sF/g' %s''' % (letters, letters, new_file), shell=True)
 | 
			
		||||
		Reference in New Issue
	
	Block a user