Changeset 364 in code for trunk/service.go


Ignore:
Timestamp:
Jul 22, 2020, 10:20:52 AM (5 years ago)
Author:
contact
Message:

Rename certfp reset to sasl reset

And make it reset all SASL credentials.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/service.go

    r363 r364  
    181181                                        handle: handleServiceCertfpFingerprints,
    182182                                },
    183                                 "reset": {
    184                                         usage:  "<network name>",
    185                                         desc:   "disable SASL EXTERNAL authentication and remove stored certificate",
    186                                         handle: handleServiceCertfpReset,
    187                                 },
    188183                        },
    189184                },
     
    194189                                        desc:   "set SASL PLAIN credentials",
    195190                                        handle: handleServiceSASLSetPlain,
     191                                },
     192                                "reset": {
     193                                        usage:  "<network name>",
     194                                        desc:   "disable SASL authentication and remove stored credentials",
     195                                        handle: handleServiceSASLReset,
    196196                                },
    197197                        },
     
    574574}
    575575
    576 func handleServiceCertfpReset(dc *downstreamConn, params []string) error {
    577         if len(params) != 1 {
    578                 return fmt.Errorf("expected exactly one argument")
     576func handleServiceSASLSetPlain(dc *downstreamConn, params []string) error {
     577        if len(params) != 3 {
     578                return fmt.Errorf("expected exactly 3 arguments")
    579579        }
    580580
     
    584584        }
    585585
    586         net.SASL.External.CertBlob = nil
    587         net.SASL.External.PrivKeyBlob = nil
    588 
    589         if net.SASL.Mechanism == "EXTERNAL" {
    590                 net.SASL.Mechanism = ""
    591         }
    592         if err := dc.srv.db.StoreNetwork(dc.user.Username, &net.Network); err != nil {
    593                 return err
    594         }
    595 
    596         sendServicePRIVMSG(dc, "certificate reset")
    597         return nil
    598 }
    599 
    600 func handleServiceSASLSetPlain(dc *downstreamConn, params []string) error {
    601         if len(params) != 3 {
    602                 return fmt.Errorf("expected exactly 3 arguments")
     586        net.SASL.Plain.Username = params[1]
     587        net.SASL.Plain.Password = params[2]
     588        net.SASL.Mechanism = "PLAIN"
     589
     590        if err := dc.srv.db.StoreNetwork(net.Username, &net.Network); err != nil {
     591                return err
     592        }
     593
     594        sendServicePRIVMSG(dc, "credentials saved")
     595        return nil
     596}
     597
     598func handleServiceSASLReset(dc *downstreamConn, params []string) error {
     599        if len(params) != 1 {
     600                return fmt.Errorf("expected exactly one argument")
    603601        }
    604602
     
    608606        }
    609607
    610         net.SASL.Plain.Username = params[1]
    611         net.SASL.Plain.Password = params[2]
    612         net.SASL.Mechanism = "PLAIN"
    613 
    614         if err := dc.srv.db.StoreNetwork(net.Username, &net.Network); err != nil {
    615                 return err
    616         }
    617 
    618         sendServicePRIVMSG(dc, "credentials saved")
     608        net.SASL.Plain.Username = ""
     609        net.SASL.Plain.Password = ""
     610        net.SASL.External.CertBlob = nil
     611        net.SASL.External.PrivKeyBlob = nil
     612        net.SASL.Mechanism = ""
     613
     614        if err := dc.srv.db.StoreNetwork(dc.user.Username, &net.Network); err != nil {
     615                return err
     616        }
     617
     618        sendServicePRIVMSG(dc, "credentials reset")
    619619        return nil
    620620}
Note: See TracChangeset for help on using the changeset viewer.