Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 62377 Details for
Bug 53954
Support for kernel PPPoE in the RC scripts
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
update_secrets_file function implementation using sed -r
functions.new (text/plain), 2.40 KB, created by
Alin Năstac (RETIRED)
on 2005-06-30 22:46:12 UTC
(
hide
)
Description:
update_secrets_file function implementation using sed -r
Filename:
MIME Type:
Creator:
Alin Năstac (RETIRED)
Created:
2005-06-30 22:46:12 UTC
Size:
2.40 KB
patch
obsolete
># void escape_regex_string_param(char* param) ># ># Escape special regex characters >function escape_regex_string_param() { > local escaped_result=$@ > escaped_result=${escaped_result//\\/\\\\} > escaped_result=${escaped_result//./\\.} > escaped_result=${escaped_result//+/\\+} > escaped_result=${escaped_result//(/\\(} > escaped_result=${escaped_result//)/\\)} > escaped_result=${escaped_result//[/\\[} > escaped_result=${escaped_result//]/\\]} > escaped_result=${escaped_result//\{/\\\{} > escaped_result=${escaped_result//\}/\\\}} > escaped_result=${escaped_result//\?/\\\?} > escaped_result=${escaped_result//\*/\\\*} > escaped_result=${escaped_result//\//\\/} > escaped_result=${escaped_result//|/\\|} > escaped_result=${escaped_result//&/\\&} > escaped_result=${escaped_result//~/\\~} > escaped_result=${escaped_result//^/\\^} > escaped_result=${escaped_result//$/\\$} > echo $escaped_result >} > ># bool update_secrets_file(char* filepath, char* username, char* remotename, char* password) ># ># Add/update PAP/CHAP authentication information >function update_secrets_file() { > local filepath=${1} username=${2} remotename=${3} password=${4} > if [[ ! -f ${filepath} ]]; then > touch ${filepath} && \ > chmod 0600 ${filepath} || \ > return 1 > fi > > #escape username and remotename, used in following sed calls > local regex_username=$(escape_regex_string_param ${username}) > local regex_remotename=$(escape_regex_string_param ${remotename}) > local regex_password > local regex_filter="[ \t]*\"?${regex_username}\"?[ \t]*\"?${regex_remotename}\"?[ \t]*" > > #read old password, including " chars > #for being able to distinct when we need to add or update auth info > local old_password=$( > sed -r -e "/^${regex_filter}\".*\"[ \t]*\$/\ > {s/^${regex_filter}(\".*\")[ \t]*\$/\1/;q;};\ > d;" \ > ${filepath} > ) > > if [[ -z "${old_password}" ]]; then > regex_username=${username//\\/\\\\} > regex_remotename=${remotename//\\/\\\\} > regex_password=${password//\\/\\\\} > sed -r -i -e "\$a\"${regex_username}\" ${regex_remotename} \"${regex_password}\"" ${filepath} > vewarn "Authentication info has been added to ${filepath}" > elif [[ "\"${password}\"" != "${old_password}" ]]; then > regex_password=${password//\\/\\\\} > regex_password=${regex_password//\//\\/} > regex_password=${regex_password//&/\\&} > sed -r -i -e "s/^(${regex_filter}\").*(\"[ \t]*)\$/\1${regex_password}\2/" ${filepath} > vewarn "Authentication info has been updated in ${filepath}" > fi > return 0 >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 53954
:
61462
|
61517
|
61518
|
61523
|
61597
|
61598
|
61599
|
61600
|
61699
|
61844
|
61849
|
62051
|
62083
|
62109
|
62123
|
62124
|
62377
|
62505
|
62508