Skip to content
Snippets Groups Projects
Commit c0d7df05 authored by dnsadmin's avatar dnsadmin
Browse files

Doksi

Van general overview,

A doxygen meglepően könnyen generálta...
parent 6da750c9
No related tags found
No related merge requests found
# Mire? # Project Overview
A szoftver a Linux programozás című tárgy keretében házi gyanánt született. This software realizes a DNS server which uses the sqlite3 library to serve queries from a database.
# A feladat ## Student Data
| Name | Neptun code |
|------------|-------------|
| Eckl, Máté | ON82HB |
A feladatom egy DNS szerver készítése, ami daemonként futtatható és valamilyen IPC mechanizmuson keresztül vezérelhető, monitorozható.
Tartalmaz szálkezelést is.
Milyen típusú kéréseket tud feldolgozni a szerver.
Ptr rekordokat meg hasonlókat nem kezel
A szerver csak A, AAAA, CNAME és TXT rekordokat lesz képes feloldani.
Ehhez kötődik, hogy beérkezett kérésként a name mezőben lévő adatot mindenképpen label sequence-ként fogja értelmezni.
File moved
# General overview
## Concept
Basically this is one program that may be run as a daemon, in which case it starts to serve as a DNS server, or as a controller in which case it may send messages to the daemon.
The server is multi_threaded, and thread safety is granted where it seems to be a real issue.
## Control over the server
They use UNIX domain sockets as IPC communication form.
There are two datagram sockets they know one for the server and one for the controller, and both of them know which one is theirs.
At this time there is only one message that a controller may send to the server and it is about shutting down.
In general the commands are designed to be one-word commands (as 0 terminated strings). To the answer however the only limitation is that it should be a 0 terminated string.
## Dependencies
The server uses libsqlite3 as a database backend.
Some system calls or solutions are UNIX/Linux specific.
## Limits
The server is only able to serve A, AAAA, CNAME and TXT records.
## Other
Some specific wrapper classes have been created to simplify coding, but they all are task specific and therefore may hardly be used in a significally different context.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment