Skip to main content

This schedule can be changed at any time so that we have the flexibility to adjust the class to the students’ pace. Be sure to revisit this page often and remember to look at our Google Classroom for lecture slides and activities.

WeekDateTopicReadings
1Jan. 16, 2024C language review: data types and portability, pointers, manual pages, library calls, debugging
Lab 1
C – Quick Guide
man(1)
gdb
ddd
2Jan. 23, 2024Unix system programming review: dynamic memory allocation, library calls.
Lab 2
Linux/ Unix Systems Programming Essentials
printf(3)
malloc(3), free(3), memcmp(3), mtkime(3)
3Jan. 30, 2024Unix system programming review: system calls.
Lab 3
open(2), read(2), write(2), xxd(1)
4Feb. 06, 2024Networking concepts (protocol stack, addresses); UDP sockets (client/server application)
Lab 4
Beej’s Guide to Network Programming
socket(2), sendto(2), recvfrom(2), bind(2), memset(3), htons(3), htonl(3), gettimeofday(2), getaddrinfo(3)
5Feb. 13, 2024TCP sockets: client/server application
Lab 5
Beej’s Guide to Network Programming
socket(2), connect(2), bind(2), listen(2), accept(2), gethostbyname(3)
6Feb. 20, 2024Lab 6
7Feb. 27, 2024ARP, UDP, and TCP
Lab 7 (Google Classroom)
Packet capture and analysis (Wireshark)
RFCs at IETF
To read or not to read?
8Mar. 05, 2024DNS and TCP
Lab 8 (Google Classroom)
Packet capture and analysis (Wireshark)
RFCs at IETF
To read or not to read?
Mar. 12, 2024Spring Break
9Mar. 19, 2024Principles of Software Security
Lab 9 (Google Classroom)
McGraw and Viega
10Mar. 26, 2024Cryptography (secret key, public key), network data integrity, file integrity
11Apr. 02, 2024Quiz 1
Information security models (Bell-LaPadula, Biba, Chinese Wall)
12Apr. 09, 2024Access Control (MAC, DAC, RBAC); authentication; authentication protocols
13Apr. 16, 2024Quiz 2
Passwords; network security
14Apr. 23, 2024Malware
Apr. 29, 2024Quiz 3 (on your own time) [this is the due date]