diff options
author | Michael Steinert <[email protected]> | 2023-09-21 08:11:19 -0500 |
---|---|---|
committer | Michael Steinert <[email protected]> | 2023-09-21 08:23:39 -0500 |
commit | df9e70a6d733f806a827e0a465ab33e7881b1e8d (patch) | |
tree | 432dfcf85b3451d0645d5c51355930ec305707e7 | |
parent | d9b3ff918fc347ecb86bedd0aa32b91430b743c9 (diff) |
Format transaction.c with clang-format
To improve readability and encourage consistency in PRs.
-rw-r--r-- | .clang-format | 111 | ||||
-rw-r--r-- | transaction.c | 37 |
2 files changed, 129 insertions, 19 deletions
diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..4729015 --- /dev/null +++ b/.clang-format @@ -0,0 +1,111 @@ +# clang-format configuration file. For more information, see: +# +# https://clang.llvm.org/docs/ClangFormat.html +# https://clang.llvm.org/docs/ClangFormatStyleOptions.html +# +--- +AccessModifierOffset: -4 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: Left +AlignOperands: true +AlignTrailingComments: false +AllowAllParametersOfDeclarationOnNextLine: false +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: None +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterDefinitionReturnType: None +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: false +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: true + AfterNamespace: true + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + AfterExternBlock: false + BeforeCatch: false + BeforeElse: false + IndentBraces: false + SplitEmptyFunction: true + SplitEmptyRecord: true + SplitEmptyNamespace: true +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Custom +BreakBeforeInheritanceComma: false +BreakBeforeTernaryOperators: true +BreakConstructorInitializersBeforeComma: false +BreakConstructorInitializers: BeforeComma +BreakStringLiterals: false +ColumnLimit: 120 +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: false +ConstructorInitializerIndentWidth: 8 +ContinuationIndentWidth: 8 +DerivePointerAlignment: false +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +FixNamespaceComments: false +IncludeBlocks: Regroup +IncludeCategories: + - Regex: '^"(allez)/' + Priority: 2 + SortPriority: 2 + CaseSensitive: true + - Regex: '.*' + Priority: 1 + SortPriority: 0 +IndentCaseLabels: false +IndentGotoLabels: false +IndentPPDirectives: None +IndentWidth: 8 +IndentWrappedFunctionNames: false +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: '' +MacroBlockEnd: '' +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +ObjCBinPackProtocolList: Auto +ObjCBlockIndentWidth: 8 +ObjCSpaceAfterProperty: true +ObjCSpaceBeforeProtocolList: true + +# Taken from git's rules +PenaltyBreakAssignment: 10 +PenaltyBreakBeforeFirstCallParameter: 30 +PenaltyBreakComment: 10 +PenaltyBreakFirstLessLess: 0 +PenaltyBreakString: 10 +PenaltyExcessCharacter: 2 +PenaltyReturnTypeOnItsOwnLine: 60 + +PointerAlignment: Right +ReflowComments: false +SortIncludes: true +SortUsingDeclarations: false +SpaceAfterCStyleCast: false +SpaceAfterTemplateKeyword: true +SpaceBeforeAssignmentOperators: true +SpaceBeforeCtorInitializerColon: true +SpaceBeforeInheritanceColon: true +SpaceBeforeParens: ControlStatementsExceptForEachMacros +SpaceBeforeRangeBasedForLoopColon: true +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 1 +SpacesInAngles: false +SpacesInContainerLiterals: false +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +TabWidth: 8 +UseTab: Always +... diff --git a/transaction.c b/transaction.c index df25cf6..dcc32eb 100644 --- a/transaction.c +++ b/transaction.c @@ -9,29 +9,23 @@ #define PAM_CONST const #endif -int cb_pam_conv( - int num_msg, - PAM_CONST struct pam_message **msg, - struct pam_response **resp, - void *appdata_ptr) +int cb_pam_conv(int num_msg, PAM_CONST struct pam_message **msg, struct pam_response **resp, void *appdata_ptr) { *resp = calloc(num_msg, sizeof **resp); - if (num_msg <= 0 || num_msg > PAM_MAX_NUM_MSG) { + if (num_msg <= 0 || num_msg > PAM_MAX_NUM_MSG) return PAM_CONV_ERR; - } - if (!*resp) { + + if (!*resp) return PAM_BUF_ERR; - } + for (size_t i = 0; i < num_msg; ++i) { - struct cbPAMConv_return result = cbPAMConv( - msg[i]->msg_style, - (char *)msg[i]->msg, - (uintptr_t)appdata_ptr); - if (result.r1 != PAM_SUCCESS) { + struct cbPAMConv_return result = cbPAMConv(msg[i]->msg_style, (char *)msg[i]->msg, (uintptr_t)appdata_ptr); + if (result.r1 != PAM_SUCCESS) goto error; - } + (*resp)[i].resp = result.r0; } + return PAM_SUCCESS; error: for (size_t i = 0; i < num_msg; ++i) { @@ -40,6 +34,7 @@ error: free((*resp)[i].resp); } } + memset(*resp, 0, num_msg * sizeof *resp); free(*resp); *resp = NULL; @@ -52,11 +47,15 @@ void init_pam_conv(struct pam_conv *conv, uintptr_t appdata) conv->appdata_ptr = (void *)appdata; } -// pam_start_confdir is a recent PAM api to declare a confdir (mostly for tests) -// weaken the linking dependency to detect if it’s present. -int pam_start_confdir(const char *service_name, const char *user, const struct pam_conv *pam_conversation, const char *confdir, pam_handle_t **pamh) __attribute__ ((weak)); -int check_pam_start_confdir(void) { +// pam_start_confdir is a recent PAM api to declare a confdir (mostly for +// tests) weaken the linking dependency to detect if it’s present. +int pam_start_confdir(const char *service_name, const char *user, const struct pam_conv *pam_conversation, + const char *confdir, pam_handle_t **pamh) __attribute__((weak)); + +int check_pam_start_confdir(void) +{ if (pam_start_confdir == NULL) return 1; + return 0; } |