Open Mario-Kart-Felix opened 3 years ago
Manager/myapp
Files
View code
README.md
This project was bootstrapped with Create React App.
Below you will find some information on how to perform common tasks. You can find the most recent version of this guide here.
Table of Contents
Updating to New Releases
Sending Feedback
Folder Structure
Available Scripts
npm start
npm test
npm run build
npm run eject
Supported Browsers
Supported Language Features and Polyfills
Syntax Highlighting in the Editor
Displaying Lint Output in the Editor
Debugging in the Editor
Formatting Code Automatically
Changing the Page
Installing a Dependency
Importing a Component
Code Splitting
Adding a Stylesheet
Post-Processing CSS
Adding a CSS Preprocessor (Sass, Less etc.)
Adding Images, Fonts, and Files
Using the public Folder
Changing the HTML
Adding Assets Outside of the Module System
When to Use the public Folder
Using Global Variables
Adding Bootstrap
Using a Custom Theme
Adding Flow
Adding a Router
Adding Custom Environment Variables
Referencing Environment Variables in the HTML
Adding Temporary Environment Variables In Your Shell
Adding Development Environment Variables In .env
Can I Use Decorators?
Fetching Data with AJAX Requests
Integrating with an API Backend
Node
Ruby on Rails
Proxying API Requests in Development
"Invalid Host Header" Errors After Configuring Proxy
Configuring the Proxy Manually
Configuring a WebSocket Proxy
Using HTTPS in Development
Generating Dynamic Tags on the Server
Pre-Rendering into Static HTML Files
Injecting Data from the Server into the Page
Running Tests
Filename Conventions
Command Line Interface
Version Control Integration
Writing Tests
Testing Components
Using Third Party Assertion Libraries
Initializing Test Environment
Focusing and Excluding Tests
Coverage Reporting
Continuous Integration
Disabling jsdom
Snapshot Testing
Editor Integration
Debugging Tests
Debugging Tests in Chrome
Debugging Tests in Visual Studio Code
Developing Components in Isolation
Getting Started with Storybook
Getting Started with Styleguidist
Publishing Components to npm
Making a Progressive Web App
Opting Out of Caching
Offline-First Considerations
Progressive Web App Metadata
Analyzing the Bundle Size
Deployment
Static Server
Other Solutions
Serving Apps with Client-Side Routing
Building for Relative Paths
Azure
Firebase
GitHub Pages
Heroku
Netlify
Now
S3 and CloudFront
Surge
Advanced Configuration
Troubleshooting
npm start doesn’t detect changes
npm test hangs on macOS Sierra
npm run build exits too early
npm run build fails on Heroku
npm run build fails to minify
Moment.js locales are missing
Alternatives to Ejecting
Something Missing?
Updating to New Releases
Create React App is divided into two packages:
create-react-app is a global command-line utility that you use to create new projects.
react-scripts is a development dependency in the generated projects (including this one).
You almost never need to update create-react-app itself: it delegates all the setup to react-scripts.
When you run create-react-app, it always creates the project with the latest version of react-scripts so you’ll get all the new features and improvements in newly created apps automatically.
To update an existing project to a new version of react-scripts, open the changelog, find the version you’re currently on (check package.json in this folder if you’re not sure), and apply the migration instructions for the newer versions.
In most cases bumping the react-scripts version in package.json and running npm install in this folder should be enough, but it’s good to consult the changelog for potential breaking changes.
We commit to keeping the breaking changes minimal so you can upgrade react-scripts painlessly.
Sending Feedback
We are always open to your feedback.
Folder Structure
After creation, your project should look like this:
my-app/ README.md node_modules/ package.json public/ index.html favicon.ico src/ App.css App.js App.test.js index.css index.js logo.svg
For the project to build, these files must exist with exact filenames:
public/index.html is the page template;
src/index.js is the JavaScript entry point.
You can delete or rename the other files.
You may create subdirectories inside src. For faster rebuilds, only files inside src are processed by Webpack. You need to put any JS and CSS files inside src, otherwise Webpack won’t see them.
Only files inside public can be used from public/index.html. Read instructions below for using assets from JavaScript and HTML.
You can, however, create more top-level directories. They will not be included in the production build so you can use them for things like documentation.
Available Scripts
In the project directory, you can run:
npm start
Runs the app in the development mode. Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits. You will also see any lint errors in the console.
npm test
Launches the test runner in the interactive watch mode. See the section about running tests for more information.
npm run build
Builds the app for production to the build folder. It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes. Your app is ready to be deployed!
See the section about deployment for more information.
npm run eject
Note: this is a one-way operation. Once you eject, you can’t go back!
If you aren’t satisfied with the build tool and configuration choices, you can eject at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
You don’t have to ever use eject. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
Supported Browsers
By default, the generated project uses the latest version of React.
You can refer to the React documentation for more information about supported browsers.
Supported Language Features and Polyfills
This project supports a superset of the latest JavaScript standard. In addition to ES6 syntax features, it also supports:
Exponentiation Operator (ES2016).
Async/await (ES2017).
Object Rest/Spread Properties (stage 3 proposal).
Dynamic import() (stage 3 proposal)
Class Fields and Static Properties (part of stage 3 proposal).
JSX and Flow syntax.
Learn more about different proposal stages.
While we recommend using experimental proposals with some caution, Facebook heavily uses these features in the product code, so we intend to provide codemods if any of these proposals change in the future.
Note that the project only includes a few ES6 polyfills:
Object.assign() via object-assign.
Promise via promise.
fetch() via whatwg-fetch.
If you use any other ES6+ features that need runtime support (such as Array.from() or Symbol), make sure you are including the appropriate polyfills manually, or that the browsers you are targeting already support them.
Also note that using some newer syntax features like for...of or [...nonArrayValue] causes Babel to emit code that depends on ES6 runtime features and might not work without a polyfill. When in doubt, use Babel REPL to see what any specific syntax compiles down to.
Syntax Highlighting in the Editor
To configure the syntax highlighting in your favorite text editor, head to the relevant Babel documentation page and follow the instructions. Some of the most popular editors are covered.
https://en.m.wikipedia.org › wiki Lockheed Martin F-22 Raptor - Wikipedia 2005 Raptor jet fighter/reaper6 from en.m.wikipedia.org The Lockheed Martin F-22 Raptor is an American single-seat, twin-engine, all-weather stealth tactical fighter aircraft developed exclusively for the United with os X.
ACI - Stats - SPCA of Texas
Data - 2017 & 2018 That's a 25.9% increase. Looking to the total number of animals removed from cruelty, from January through September of 2017, the SPCA of Texas removed 485 animals from cruelty, and from January through September of 2018, the SPCA of Texas removed 413 animals from cruelty. That's a 14.9% decrease
PDF file name and download link | Equivalent section in IBM Documentation |
---|---|
mq92_qsg_en.pdf | IBM MQ 9.2.0 Quick Start Guide (Long Term Support) |
mq92cdr_qsg_en.pdf | IBM MQ 9.2.x Quick Start Guide (Continuous Delivery) |
mq92.overview.pdf | About IBM MQTechnical overviewScenarios |
mq92.plan.pdf | Planning for IBM MQ |
mq92.migrate.pdf | Maintaining and migrating IBM MQ |
mq92.install.pdf | Installing and uninstalling IBM MQ |
mq92.secure.pdf | Securing IBM MQ |
mq92.configure.pdf | Configuring IBM MQ |
mq92.administer.pdf | Administering IBM MQ |
mq92.develop.pdf | Developing applications for IBM MQ |
mq92.monitor.pdf | Monitoring and performance for IBM MQ |
mq92.troubleshoot.pdf | Troubleshooting and support for IBM MQ |
mq92.reference.pdf | IBM MQ Reference |
mq92.explorer.pdf | IBM MQ Explorer |
mq92.container.pdf | IBM MQ in containers |
import mtoa.utils as mutils skydome = mutils.createLocator('aiSkyDomeLight
Webpage not available The webpage at market://details?id=com.redfin.android&%24after_click_url=https%3A%2F%2Fwww.redfin.com%2FTX%2FSan-Antonio%2F5402-Mumford-Path-78228%2Fhome%2F48693812&channel=mobile-web-organic&campaign=xdp-star-banner-android&tags=xdp&tags=os%3Aandroid%7Cbrowser%3Aunknown&utm_campaign=xdp-star-banner-android&utm_source=mobile-web-organic&utm_medium=mobile-web-xdp&browserId=cu9MZ0brS4qx735j-1m4Ew&propertyId=48693812&_branch_match_id=913360010020133759&referrer=link_click_id%253D913360010020133759%2526utm_source%253Dmobile-web-organic%2526utm_campaign%253Dxdp-star-banner-android%2526utm_medium%253Dmobile-web-xdp%2526af_ref%253Dbranch_913360012260215609 could not be loaded because:
net::ERR_UNKNOWN_URL_SCHEME
#
#
import os import time import Queue import threading import argparse from netaddr import * from nmb.NetBIOS import NetBIOS from smb.SMBConnection import SMBConnection
class scan_thread (threading.Thread): def init(self,ip,share,subfolder,user,pwd,domain,recursive,pattern): threading.Thread.init(self) self.ip = ip self.share = share self.subfolder = subfolder self.user = user self.pwd = pwd self.domain = domain self.recursive = recursive self.pattern = pattern
def run(self):
print "Starting thread for " + self.ip
net = NetBIOS()
net_name = str(net.queryIPForName(self.ip)).strip("['").strip("']")
net.close()
conn = SMBConnection(self.user, self.pwd, 'cobwebs', net_name, domain=self.domain, use_ntlm_v2 = False)
if conn.connect(self.ip, port=139, timeout=10):
print ("Connecting to %s was successful! How about a nice game of spidering %s%s?" % (self.ip, self.share, self.subfolder))
else:
print ("Connection error: %s" % (self.ip))
if self.recursive > 0:
recurse(conn,self.ip,self.share,self.subfolder,self.pattern,int(self.recursive))
else:
filelist = conn.listPath(self.share, self.subfolder)
dir_list(filelist,self.ip,self.subfolder,self.pattern)
conn.close()
print "Exiting thread for " + self.ip
def get_ips(iparg): ips = [] try: if os.path.isfile(iparg): f = open(iparg,'r') for line in f: line = line.rstrip() if '/' in line: for ip in IPNetwork(line).iter_hosts(): ips.append(str(ip)) else: ips.append(line) f.close() return ips if '/' in iparg: for ip in IPNetwork(iparg).iter_hosts(): ips.append(str(ip)) else: ips.append(str(IPAddress(iparg))) except: print ("Error reading file or IP Address notation: %s" % iparg) exit() return ips
def recurse(smb_conn,ip,share,subfolder,patt,depth): try: filelist = smb_conn.listPath(share, subfolder) dir_list(filelist,ip,subfolder,patt) if depth == 0: return 0 except: print ("//%s/%s [Unable to read]" % (ip, subfolder.replace("//",""))) return 1
for result in filelist: if result.isDirectory and result.filename != '.' and result.filename != '..': recurse(smb_conn,ip,share,subfolder+'/'+result.filename,patt,depth-1) return 0
def dir_list(files,ip,path,pattern): for result in files: for instance in pattern: if instance in result.filename: if result.isDirectory: print ("//%s/%s/%s [dir]" % (ip,path.replace("//",""),result.filename)) else: print ("//%s/%s/%s" % (ip,path.replace("//",""),result.filename)) return 0
start_time = time.time()
banner = " ____"
banner += "\n |\'-.( / |"
banner += "\n | \ .'-.\ , ,|"
banner += "\n |-.\' .-; SMB Spider .'`-' |"
banner += "\n | \ .' ( v1.0 beta .' \ |"
banner += "\n |.--.\' ) ;-; .|"
banner += "\n | ` ()/ \ '-,_,-'\ |" banner += "\n |______ /(O)\ ________________/____)_
-._|"
banner += "\n"
print (banner)
parser = argparse.ArgumentParser(description='SMB Spider will search shares. It is best used to search SMB shares for sensitive files, i.e., passwords.xls') parser.add_argument('-ip','--ipaddress', help='IP Address, IP/CIDR, IP Address File',required=True) parser.add_argument('-s','--share',help='SMB share to spider', required=True) parser.add_argument('-f','--subfolder',help='SMB subfolder to spider', default='/', required=False) parser.add_argument('-pa','--pattern',help='Keyword to search for, i.e., password', default='', required=False) parser.add_argument('-pf','--patternfile',help='File of keywords to search for, i.e., password', default='', required=False) parser.add_argument('-u','--user',help='SMB user to connect with', default='', required=False) parser.add_argument('-p','--pwd',help='SMB password to connect with', default='', required=False) parser.add_argument('-d','--domain',help='SMB domain to connect with', default='', required=False) parser.add_argument('-r','--recursive',help='Spider subfolders. Set value for depth.', default=0, required=False) parser.add_argument('-t','--threads',help='Number of threads', default=1, required=False) args = parser.parse_args()
ips = get_ips(args.ipaddress)
pattern = [] if args.patternfile != '': try: f = open(args.patternfile,'r') for line in f: line = line.rstrip() pattern.append(line) f.close() if args.pattern != '': pattern.append(args.pattern) except: print ("Error reading pattern file: %s" % args.patternfile) else: pattern.append(args.pattern)
for ip in ips:
thread = scan_thread(ip,args.share,args.subfolder,args.user,args.pwd,args.domain,args.recursive,pattern) thread.start()
while threading.activeCount() > int(args.threads): time.sleep(0.01)
while threading.activeCount() > 1: time.sleep(0.01)
print ("Done spidering...\nCompleted in: %s" % (time.time() - start_time))
I am responsible for maintaining two Debian servers. Every time I have to do anything with security certificates, I Google for tutorials and beat away until it finally works.
However, in my searches I often come across different file formats (.key, .csr, .pem) but I've never been able to find a good explanation of what each file format's purpose is.
I was wondering if the good folks here at ServerFault could provide some clarification on this matter?
SSL has been around for long enough you'd think that there would be agreed upon container formats. And you're right, there are. Too many standards as it happens. So this is what I know, and I'm sure others will chime in.
.csr - This is a Certificate Signing Request. Some applications can generate these for submission to certificate-authorities. The actual format is PKCS10 which is defined in RFC 2986. It includes some/all of the key details of the requested certificate such as subject, organization, state, whatnot, as well as the public key of the certificate to get signed. These get signed by the CA and a certificate is returned. The returned certificate is the public certificate (which includes the public key but not the private key), which itself can be in a couple of formats. .pem - Defined in RFCs 1421 through 1424, this is a container format that may include just the public certificate (such as with Apache installs, and CA certificate files /etc/ssl/certs), or may include an entire certificate chain including public key, private key, and root certificates. Confusingly, it may also encode a CSR (e.g. as used here) as the PKCS10 format can be translated into PEM. The name is from Privacy Enhanced Mail (PEM), a failed method for secure email but the container format it used lives on, and is a base64 translation of the x509 ASN.1 keys. .key - This is a PEM formatted file containing just the private-key of a specific certificate and is merely a conventional name and not a standardized one. In Apache installs, this frequently resides in /etc/ssl/private. The rights on these files are very important, and some programs will refuse to load these certificates if they are set wrong. .pkcs12 .pfx .p12 - Originally defined by RSA in the Public-Key Cryptography Standards (abbreviated PKCS), the "12" variant was originally enhanced by Microsoft, and later submitted as RFC 7292. This is a passworded container format that contains both public and private certificate pairs. Unlike .pem files, this container is fully encrypted. Openssl can turn this into a .pem file with both public and private keys: openssl pkcs12 -in file-to-convert.p12 -out converted-file.pem -nodes A few other formats that show up from time to time:
.der - A way to encode ASN.1 syntax in binary, a .pem file is just a Base64 encoded .der file. OpenSSL can convert these to .pem (openssl x509 -inform der -in to-convert.der -out converted.pem). Windows sees these as Certificate files. By default, Windows will export certificates as .DER formatted files with a different extension. Like... .cert .cer .crt - A .pem (or rarely .der) formatted file with a different extension, one that is recognized by Windows Explorer as a certificate, which .pem is not. .p7b .keystore - Defined in RFC 2315 as PKCS number 7, this is a format used by Windows for certificate interchange. Java understands these natively, and often uses .keystore as an extension instead. Unlike .pem style certificates, this format has a defined way to include certification-path certificates. .crl - A certificate revocation list. Certificate Authorities produce these as a way to de-authorize certificates before expiration. You can sometimes download them from CA websites. In summary, there are four different ways to present certificates and their components:
PEM - Governed by RFCs, its used preferentially by open-source software. It can have a variety of extensions (.pem, .key, .cer, .cert, more) PKCS7 - An open standard used by Java and supported by Windows. Does not contain private key material. PKCS12 - A Microsoft private standard that was later defined in an RFC that provides enhanced security versus the plain-text PEM format. This can contain private key material. Its used preferentially by Windows systems, and can be freely converted to PEM format through use of openssl. DER - The parent format of PEM. It's useful to think of it as a binary version of the base64-encoded PEM file. Not routinely used very much outside of Windows. I hope this helps.
PEM on it's own isn't a certificate, it's just a way of encoding data. X.509 certificates are one type of data that is commonly encoded using PEM.
PEM is a X.509 certificate (whose structure is defined using ASN.1), encoded using the ASN.1 DER (distinguished encoding rules), then run through Base64 encoding and stuck between plain-text anchor lines (BEGIN CERTIFICATE and END CERTIFICATE).
You can represent the same data using the PKCS#7 or PKCS#12 representations, and the openssl command line utility can be used to do this.
The obvious benefits of PEM is that it's safe to paste into the body of an email message because it has anchor lines and is 7-bit clean.
RFC1422 has more details about the PEM standard as it related to keys and certificates