This file is indexed.

/usr/share/ircII/script/autoop is in ircii 20151120-1+b1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
#	$eterna: autoop,v 1.4 2002/01/22 02:46:44 mrg Exp $
#
# AutoOp   by Ian Frechette 12-10-92 
# Written for ircII2.2pre8 and beyond

# initial list of trusted chan ops..
# format is   nickname!username@hostname   wildcards can be used in 
# any of the three fields
# in the following list the first name would autoop anyone with the 
# nickname 'example_nick'
# the second example will autoop anyone with the username
# 'bob' coming from any machine in the .nocolorado.edu domain

eval if (op_list == []) {@ op_list = [example_nick!*@* *!bob@*.nocolorado.edu]}

# People will only be opped on the following channels..  
# wildcards are allowed and thus just * means every channel.  Use
# delchan to remove stuff from the list, addchan to add
eval if (chan_list == []) {@chan_list = [* #example]}

# Show the the people currently in the autoop list
alias showop
{
    @ ao.tmp = 0
    @ ao.name = []
    echo *** AutoOp list.  Addop nick!user@host to add.  Delop <num>  to remove
    echo *** <num> nickname!username@hostname 
    while (ao.name = word($ao.tmp $op_list)) {
        echo *** $[5]ao.tmp $ao.name
        @ao.tmp = ao.tmp + 1
    }
}

# Just like showop but works with channels.
alias showchan
{
    @ ao.tmp = 0
    @ ao.name = []
    echo *** AutoOp chan list.  Addchan #channel add.  Delchan <num>  to remove
    echo *** <num> #channel
    while (ao.name = word($ao.tmp $chan_list)) {
        echo *** $[5]ao.tmp $ao.name
        @ao.tmp = ao.tmp + 1
    }
}

# Given a number.. deletes that person from the autoop list.. 
# use SHOWOP to list.
alias delop {
    if (!rmatch($0. *1* *2* *3* *4* *5* *6* *7* *8* *9* *0*))
        { echo *** Usage: delop <number>;echo *** See showop }
        { @ op_list = notword(${[$0] + 1} $op_list) }
}
    
# Given a number.. deletes that channel from the autoop channel list.. 
# use SHOWCHAN to list.
alias delchan {
    if (!rmatch($0. *1* *2* *3* *4* *5* *6* *7* *8* *9* *0*))
        { echo *** Usage: delchan <number>;echo *** See showchan }
        { @ chan_list = notword(${[$0] + 1} $chan_list) }
}

# Add an autochanop to the list.
alias addop {
    if ([$0])
    { @ op_list = op_list ## [ $0] }
    { echo *** Usage addop nick!username@host;echo *** wildcards are allowed }
}

# Add an autochanop channel to the list.
alias addchan {
    if ([$0])
    { @ chan_list = chan_list ## [ $0] }
    { echo *** Usage addchan #channel;echo *** wildcards are allowed }
}

# the actual ON that does the work
on #-join 666 * {
    if (rmatch($1 $chan_list))
    {
	if (rmatch($0!$userhost() $op_list) && ischanop($N $1))
	    { timer ${10 + rand(10)} conditionalop $1 $0 }
    }
}

alias conditionalop {
    if (!ischanop($1 $0))
    {
	mode $0 +o $1
    }
}

# The perfect complement to the $word() function.  
# $notword(index words)  returns words minus the indexed word. 
# the special handling of nw.sep is to deal with the cases when 
# the index points to the first or last word.
alias notword {
    if ([$0] > 0)
    {
    if (([$0] > 1) && ([$0] < rmatch($~ $1-)))
        { @ nw.sep = [ ] }
        { @ nw.sep = [] }
        
    @ function_return = [$(1-${[$0]-1})] ## [$nw.sep] ## [$(${[$0]+1}-)]
    }
    {
        @ function_return = [$1-]
    }
}