Most of the software we release is open source, to encourage replication and experimentation. Code is developed by members of the Usable Security and Privacy Lab.
Secure Socket API: The secure socket API extends the POSIX socket API to provide simple developer usability for TLS and administrator control over how TLS is configured on their machines. Led by Mark O'Neill.
TrustBase: TrustBase is an architecture that provides certificate-based authentication as an operating system service. TrustBase enforces best practices for certificate validation for all applications and transparently enables existing applications to be strengthened against failures of the CA system. Led by Mark O'Neill.
WiFu: A composable toolkit for experimental wireless transport protocols, from the WiFu project. Designed to help researchers and developers create transport protocols in user space. Led by Randy Buck
omnet-extension and inet-extension: Code for OMNET++ that enables the simulator to interact with the decision engine of a streaming video player, from the Dynamic Adaptive Streaming over HTTP project. Led by Travis Andelin.
leaf:A free website to analyze your FamilySearch tree and find people that need your attention. You can search for people who are missing a birth or marriage date, haven't yet been baptized, or numerous other criteria. Uses colorful charts or a Google-style search to show the results. Led by Daniel Zappala.
Some of the code for leaf has been released FamilyTree sample app.
Python GEDCOM Parser: A basic parser for the GEDCOM 5.5 format. Led by Daniel Zappala.
Citizen Budget: An online application showing the details of your city's finances, using charts and graphs. Used to display the budget for the city of Cedar Hills at budget.cedarhills.org. Led by Daniel Zappala
I have started putting up all of the web pages as open source, with the graphics and design elements licensed via Creative Commons. These include:
My personal web pages for this site, zappala.byu.edu.
My campaign campaign pages for Cedar Hills City Council, hosted at vote.zappala.org .
The pages for the BYU Internet Research Lab.
The pages for the BYU Open Source Lab.
The pages for CS 360 and CS 660, containing all of my course materials, including assignments and lecture notes.
Past projects (code not available here, but may be found on the Internet) include:
RSVP: Resource Reservation Protocol. RVSP helps to provide Quality of Service connections in the Internet by making resource reservations on routers. It was conceived by a group of researchers at USC/ISI and Xerox PARC, then evolved into a proposed standard within the IETF. I worked as the primary author of RSVP code in the SunOS 4.3 kernel, which was later ported to the BSD operating system kernels. Reference code can be downloaded from the FreeBSD team. I was also a member of the ISI Development team, which wrote the RSVP daemon distributed by ISI. ISI's RSVP daemon is a reference implementation for various venders; for example, RSVP is currently implemented in several Cisco routers. See L. Zhang , S. Deering, D. Estrin, S. Shenker and D. Zappala, RSVP: A Resource ReSerVation Protocol. IEEE Network, September 1993 and RFC 2205.
RSRR: A Routing Interface for RSVP Daniel Zappala, with revisions by Jeff Kann and others. RSRR is the interface between RSVP (Internet resource reservation protocol) and multicast routing protocols; RSRR is implemented in mrouted (multicast routing daemon) and RSVPd (Resource Reservation Protocol daemon). mrouted is distributed with most Unix operating systems.
Treecalc: A Tool for Evaluating Multicast Routing Protocols, Daniel Zappala, with contributions by Aaron Fabbri. Treecalc compares different types of multicast trees based on delay, cost, traffic concentration, and router state. This simulator was used for our work on multiple cores and SSM proxies.
SDRP: Source Demand Routing Protocol, Daniel Zappala and Kannan Varadhan. SDRP can be used to source route packets in the Internet, for example to avoid congestion. See RFC 1940.