Search Results

Search found 2 results on 1 pages for 'ladlestein'.

Page 1/1 | 1 

  • Is it ever good to share a userid?

    - by Ladlestein
    On Un*x, Is it ever a good idea to have one userid that many different people log into when they do stuff? Often I'm installing software or something on a Linux or BSD system. I've developed software for 24 years now, so I know how to make the machine do what I want, but I've never had responsibility for maintaining a multi-user installation where anyone really cared about security. So my opinions feel untested. Now I'm at a company where there's a server that many people log into with a single userid and do stuff. I'm installing some software on it. It's not really a public-facing server, and is only accessible via VPN, but it's used by many people nonetheless, to run tests on custom software, things like that. It's a staging server. I'm thinking that at the very least, using a single user obscures an audit trail, and that's bad. And it's just inelegant, because people don't have their own spaces on the server. But then again, with more userids, maybe there's a greater chance that one can be compromised, allowing attackers to gain access. ?

    Read the article

  • Foiled by path-dependent types

    - by Ladlestein
    I'm having trouble using, in one trait, a Parser returned from a method in another trait. The compiler complains of a type mismatch and it appears to me that the problem is due to the path-dependent class. I'm not sure how to get what I want. trait Outerparser extends RegexParsers { def inner: Innerparser def quoted[T](something: Parser[T]) = "\"" ~> something <~ "\"" def quotedNumber = quoted(inner.number) // Compile error def quotedLocalNumber = quoted(number) // Compiles just fine def number: Parser[Int] = ("""[1-9][0-9]*"""r) ^^ {str => str.toInt} } trait Innerparser extends RegexParsers { def number: Parser[Int] = ("""[1-9][0-9]*"""r) ^^ {str => str.toInt} } And the error: [error] /Path/to/MyParser.scala:6: type mismatch [error] found : minerals.Innerparser#Parser[Int] [error] required: Outerparser.this.Parser[?] [error] def quotedNumber = quoted(inner.number) I sort-of get the idea: each "something" method is defining a Parser type whose path is specific to the enclosing class (Outerparser or Innerparser). The "quoted" method of Outerparser expects an an instance of type Outerparser.this.Parser but is getting Innerparser#Parser. I like to be able to use quoted with a parser obtained from this class or some other class. How can I do that?

    Read the article

1