diff options
author | Simo Sorce <simo@redhat.com> | 2012-11-22 12:39:38 -0500 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-02-28 12:51:57 +0100 |
commit | 0a8a06a50e8deaf5b78b1bf4cc99fb571dda7860 (patch) | |
tree | 6dbcc88444a564ad10ac16d65935f9be5081d334 /contrib | |
parent | f7e97d8b7b72f376a7c75dbe184634f38db35567 (diff) | |
download | sssd-0a8a06a50e8deaf5b78b1bf4cc99fb571dda7860.tar.gz sssd-0a8a06a50e8deaf5b78b1bf4cc99fb571dda7860.tar.bz2 sssd-0a8a06a50e8deaf5b78b1bf4cc99fb571dda7860.zip |
Refactor krb5 child
The aim of this refactoring is to make the code readable and understandable.
This code has grown organically over time and has becomed confused and
baroque enough that understanding it's very simple flow had become very
complex for the uninitiated. Complex flows easily hide nasty bugs.
Improvements:
- Remove dead/unused data storage
- Fix and simplify talloc hierarchy, use a memory context (kr) for the
whole code and allocate kr->pd where it is filled up.
- Rename some functions to create a better name space (easier for
searching fucntions across the tree)
- Streamline setup function, by spliting out fast setup in a subroutine.
- Avoid confusing indirection in executng actual functions by not
using the krb5_req child_req member.
- Make main() flow s now simmetric, send abck data from the main function
instead of delegating a reply to every inner function that implements a
command.
Now the flow is evident from the main function:
1. read request
2. setup data
3. execute command
4. send reply back
Diffstat (limited to 'contrib')
0 files changed, 0 insertions, 0 deletions