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. 21, 2025C language review: data types and portability, pointers, manual pages, library calls, debugging
Lab 1
C – Quick Guide
man(1)
gdb
ddd
2Jan. 28, 2025Unix 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)
3Feb. 04, 2024Unix system programming review: system calls.
Lab 3
open(2), read(2), write(2), xxd(1)
4Feb. 11, 2025Networking 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. 18, 2025TCP 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. 25, 2024Fleshing out a client/server application
Lab 6
7Mar. 04, 2025Principles of software and network security
Lab 7
McGraw and Viega
8Mar. 11, 2025Spring Break
9Mar. 18, 2025ARP, UDP, and TCP
Lab 8 (Google Classroom)
Packet capture and analysis (Wireshark)
RFCs at IETF
To read or not to read?
10Mar. 25, 2025DNS and TCP
Lab 9 (Google Classroom)
Packet capture and analysis (Wireshark)
11Apr. 01, 2025Quiz 1
Cryptography (secret key, public key), data integrity, file integrity
12Apr. 08, 2025Information security models (Bell-LaPadula, Biba, Chinese Wall)
13Apr. 15, 2025Quiz 2
Authentication; authentication protocols
14Apr. 22, 2025Authentication protocols
15Apr. 29, 2025Quiz 3
Malware