4 |
4 |
5 |
5 |
6 \begin{document} |
6 \begin{document} |
7 \newcolumntype{C}[1]{>{\centering}m{#1}} |
7 \newcolumntype{C}[1]{>{\centering}m{#1}} |
8 |
8 |
9 \section*{Coursework 7CCSMSEN} |
9 \section*{Coursework for 7CCSMSEN} |
10 |
10 |
11 This coursework is worth 4\% and is due on 19 October at |
11 This coursework is worth 10\% and is due on 1 December at 16:00. You |
12 16:00. You are asked to implement a regular expression matcher |
12 are asked to fill in the access control matrix below giving the |
13 and submit a document containing the answers for the questions |
13 correct access rights. You have to submit your answers at KEATS. You |
14 below. You can do the implementation in any programming |
14 can submit your answers in a txt-file or as pdf. |
15 language you like, but you need to submit the source code with |
|
16 which you answered the questions, otherwise a mark of 0\% will |
|
17 be awarded. You can submit your answers in a txt-file or pdf. |
|
18 Code send as code. |
|
19 |
|
20 |
15 |
21 |
16 |
22 \subsubsection*{Disclaimer} |
17 \subsubsection*{Disclaimer} |
23 |
18 |
24 It should be understood that the work you submit represents |
19 It should be understood that the work you submit represents your |
25 your own effort. You have not copied from anyone else. An |
20 \textbf{own} effort! You are not supposed to work in groups and have |
26 exception is the Scala code I showed during the lectures or |
21 not copied any solution from anyone else.\bigskip |
27 uploaded to KEATS, which you can freely use.\bigskip |
|
28 |
22 |
29 |
23 |
30 \subsection*{Task} |
24 \subsection*{Task} |
31 |
25 |
32 A Unix directory might look as follows: |
26 A Unix directory might look as follows: |
33 |
27 |
34 \begin{center} |
28 \begin{center} |
35 \begin{verbatim} |
29 \begin{verbatim} |
36 $ ls -ld . * */* |
30 $ ls -ld . * */* |
37 drwxr-xr-x 1 ping staff 32768 Apr 2 2010 . |
31 drwxr-xr-x 1 ping staff 32768 Apr 2 2010 . |
38 -rw----r-- 1 ping students 31359 Jul 24 2011 manual.txt |
32 -rw----r-- 1 ping students 31359 Jul 24 2011 manual.txt |
39 -r--rw--w- 1 bob students 4359 Jul 24 2011 report.txt |
33 -r--rw--w- 1 bob students 4359 Jul 24 2011 report.txt |
40 -rwsr--r-x 1 bob students 141359 Jun 1 2013 microedit |
34 -rwsr--r-x 1 bob students 141359 Jun 1 2013 microedit |
41 dr--r-xr-x 1 bob staff 32768 Jul 23 2011 src |
35 dr--r-xr-x 1 bob staff 32768 Jul 23 2011 src |
42 -rw-r--r-- 1 bob staff 81359 Feb 28 2012 src/code.c |
36 -rw-r--r-- 1 bob staff 81359 Feb 28 2012 src/code.c |
43 -r--rw---- 1 emma students 959 Jan 23 2012 src/code.h |
37 -r--rw---- 1 emma students 959 Jan 23 2012 src/code.h |
44 \end{verbatim} |
38 \end{verbatim} |
45 \end{center} |
39 \end{center} |
46 |
40 |
|
41 \noindent |
47 with group memberships assigned as follows: |
42 with group memberships assigned as follows: |
48 \begin{center} |
43 \begin{center} |
49 \begin{tabular}{ll} |
44 \begin{tabular}{ll} |
50 Members of group staff: & ping, bob, emma\\ |
45 Members of group staff: & \texttt{ping}, \texttt{bob}, \texttt{emma}\\ |
51 Members of group students: & emma\\ |
46 Members of group students: & \texttt{emma}\\ |
52 \end{tabular} |
47 \end{tabular} |
53 \end{center} |
48 \end{center} |
54 |
49 |
55 The file microedit is a text editor, which allows its users to open, edit and |
50 \noindent |
56 save files. Note carefully that microedit has set its setuid flag. |
51 The file \texttt{microedit} is a text editor, which allows its users |
57 Fill in the access control matrix below that shows for each of the above five files, |
52 to open, edit and save files. Note carefully that microedit has set |
58 whether ping, bob, or emma are able to obtain the right to read (R) or replace (W) its |
53 its \textbf{setuid bit}. Fill in the access control matrix below |
|
54 that shows for each of the above five files, whether \texttt{ping}, |
|
55 \texttt{bob}, or \texttt{emma} are able to read (R) or replace (W) its |
59 contents using the editor microedit.\bigskip |
56 contents using the editor microedit.\bigskip |
60 |
57 |
61 \begin{center} |
58 \begin{center} |
|
59 \def\arraystretch{1.5} |
62 \begin{tabular}{r|c|c|c|c|c} |
60 \begin{tabular}{r|c|c|c|c|c} |
63 & manual.txt & report.txt & microedit & src/code.c & src/code.h \\\hline |
61 & manual.txt & report.txt & microedit & src/code.c & src/code.h \\\hline |
64 ping & & & & &\\\hline |
62 ping & & & & &\\\hline |
65 bob & & & & &\\\hline |
63 bob & & & & &\\\hline |
66 emma & & & & &\\ |
64 emma & & & & &\\ |
67 \end{tabular} |
65 \end{tabular} |
68 \end{center} |
66 \end{center}\bigskip |
69 |
67 |
70 |
68 \noindent |
|
69 For help about how to fill in the access control matrix, see additional hints |
|
70 uploaded to KEATS. |
71 \end{document} |
71 \end{document} |
72 |
72 |
73 %%% Local Variables: |
73 %%% Local Variables: |
74 %%% mode: latex |
74 %%% mode: latex |
75 %%% TeX-master: t |
75 %%% TeX-master: t |