code: func (s *Service) SetOption(args []byte) ([]byte, error) {
  	opts := bytes.SplitN(args, []byte{' '}, 2)
  	key := string(opts[0])
  	val := string(opts[1])
  
  	if Trace {
  		fmt.Fprintf(os.Stderr, "set option %q=%q\n", key, val)
  	}
  
  	switch key {
  	case "broadcastIP": // TODO: const-ify
  		if val == "1" {
  			ip := s.PrimaryIP()
  			if ip == "" {
  				log.Printf("failed to find primary IP")
  				return nil, nil
  			}
  			msg := fmt.Sprintf("info-set guestinfo.ip %s", ip)
  			_, err := s.out.Request([]byte(msg))
  			if err != nil {
  				return nil, err
  			}
  
  			s.SendGuestInfo()
  		}
  	default:
  		// TODO: handle other options...
  	}
  
  	return nil, nil
  }
docs: // SetOption is the default Handler for Set_Option requests