summaryrefslogtreecommitdiff
path: root/init/service_parser.cpp
diff options
context:
space:
mode:
authoralk3pInjection <webmaster@raspii.tech>2023-04-20 00:08:54 +0800
committeralk3pInjection <webmaster@raspii.tech>2023-04-20 00:08:54 +0800
commita7dd355e8fe8ad0c579a4f0acd06b2e3b52dfc3a (patch)
tree2b552b59793a33466247fc6fb8cf89ecbfdc4a05 /init/service_parser.cpp
parentf0103ea35d56ccebbae16a43cac19ac38b11a9a2 (diff)
parent43816573a268998f892081eebf3ffe91d65b7e18 (diff)
Merge tag 'LA.QSSI.13.0.r1-09800-qssi.0' into tachibanatachibana
"LA.QSSI.13.0.r1-09800-qssi.0" Change-Id: I06ecf682f4d5595bce3383b6031506cc56bc0db2
Diffstat (limited to 'init/service_parser.cpp')
-rw-r--r--init/service_parser.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/init/service_parser.cpp b/init/service_parser.cpp
index 9e914ee7c..1ee309d98 100644
--- a/init/service_parser.cpp
+++ b/init/service_parser.cpp
@@ -434,11 +434,14 @@ Result<void> ServiceParser::ParseSocket(std::vector<std::string>&& args) {
<< "' instead.";
}
- if (types.size() > 1) {
- if (types.size() == 2 && types[1] == "passcred") {
+ for (size_t i = 1; i < types.size(); i++) {
+ if (types[i] == "passcred") {
socket.passcred = true;
+ } else if (types[i] == "listen") {
+ socket.listen = true;
} else {
- return Error() << "Only 'passcred' may be used to modify the socket type";
+ return Error() << "Unknown socket type decoration '" << types[i]
+ << "'. Known values are ['passcred', 'listen']";
}
}